Roger Dingledine
359c1fb9aa
wait a minute, weasel said there was a memory-stomping bug here
...
let's see if we find it
svn:r1639
2004-04-16 08:49:14 +00:00
Roger Dingledine
9c1470840f
i was wrong about one of my invariants
...
now it's commented
this should fix asserts when you try an intro point, get a nack,
and try a second one and it works.
svn:r1637
2004-04-16 08:21:35 +00:00
Roger Dingledine
598d8b8f79
put in an extra assert, might find a bug these way
...
svn:r1636
2004-04-16 04:41:07 +00:00
Roger Dingledine
4c2de3a2b6
compress end-of-second summary into one line
...
svn:r1635
2004-04-15 22:09:14 +00:00
Roger Dingledine
4d380ea902
quiet a -l info that should be -l debug
...
svn:r1634
2004-04-15 22:08:37 +00:00
Nick Mathewson
880ffd8f64
Must detach before attaching, or else we infinite-loop
...
svn:r1632
2004-04-15 03:48:26 +00:00
Nick Mathewson
f6dd710aff
Strings need room for a NUL.
...
svn:r1630
2004-04-15 02:02:46 +00:00
Nick Mathewson
3f352719f3
Add a missing return -1
...
svn:r1629
2004-04-15 01:23:43 +00:00
Roger Dingledine
26c1c8f173
make unattached rend streams expire after a while (60s)
...
(they were darned persistent)
also make intro circs that are waiting for acks expire after a while (20s)
svn:r1628
2004-04-15 01:08:59 +00:00
Roger Dingledine
ac38746b3b
narrow in closer
...
svn:r1627
2004-04-15 00:03:48 +00:00
Roger Dingledine
b51561f7fb
prune abandoned circs better
...
add debugging info for the bug weasel found
svn:r1626
2004-04-14 23:52:29 +00:00
Nick Mathewson
37255d24bc
Retry non-final-hop rendezvous failures
...
svn:r1625
2004-04-14 21:40:50 +00:00
Nick Mathewson
94f126bca3
Never ever leave ri.platform unset.
...
svn:r1624
2004-04-14 19:51:57 +00:00
Roger Dingledine
cda782bac0
make rendezvous points work again
...
(yay. now time to mess them up again.)
svn:r1619
2004-04-14 05:18:21 +00:00
Roger Dingledine
49f5e5b4ae
handle more purposes in new_route_len
...
svn:r1618
2004-04-14 05:06:08 +00:00
Roger Dingledine
465f0e528a
call circuit_build_failed() even when the failure is immediate
...
svn:r1617
2004-04-14 04:32:49 +00:00
Nick Mathewson
ddd45a7c0a
Do not segfault on missing intro points.
...
svn:r1616
2004-04-14 04:19:12 +00:00
Roger Dingledine
f07d880f38
remove unused variable
...
svn:r1615
2004-04-13 23:01:10 +00:00
Roger Dingledine
1d7979b460
let introcircs receive acks. rend streams now deal correctly again.
...
(i think)
svn:r1614
2004-04-13 22:56:24 +00:00
Nick Mathewson
5514ad715b
Scan list of servers in directory after reloading fingerprint list; remove any servers that are no longer recognized.
...
svn:r1613
2004-04-13 20:06:08 +00:00
Nick Mathewson
baaf58fe1d
only consider uploading descriptors every 5 sec
...
svn:r1612
2004-04-13 19:53:25 +00:00
Nick Mathewson
867832cd07
or, not and
...
svn:r1610
2004-04-13 18:44:42 +00:00
Nick Mathewson
d19abb2402
Handle END_STREAM_REASON_{EXITPOLICY|RESOLVEFAILED}
...
svn:r1609
2004-04-13 17:49:41 +00:00
Nick Mathewson
11ca973d26
Mark service descriptors as dirty when we have lost an intro point
...
svn:r1608
2004-04-13 17:20:41 +00:00
Nick Mathewson
a2ece0fc08
Separate "start-establishing-introduction" from "upload descriptors"; only upload descriptors containing fully established intro points.
...
svn:r1607
2004-04-13 17:16:47 +00:00
Roger Dingledine
e0ce205a76
clean up circuit rebuilding some; fix some bugs we hadn't hit yet
...
svn:r1606
2004-04-13 05:20:52 +00:00
Nick Mathewson
c9b5ca39de
Handle the rendezvous-circ elements of retrying introductions.
...
svn:r1604
2004-04-13 03:19:58 +00:00
Nick Mathewson
a4d25bdbd9
<arma> you should make r and i and use r for r and i for i
...
svn:r1603
2004-04-13 02:36:37 +00:00
Nick Mathewson
e53ba59250
Handle introduce naks. Arma: Is this right?
...
svn:r1602
2004-04-13 02:31:52 +00:00
Nick Mathewson
8483bace65
Get the rest of intro-ack/nak handling in ... except for the tricky "pick a new intro and re-extend and re-try" part.
...
svn:r1601
2004-04-13 01:41:39 +00:00
Nick Mathewson
9cd163f6ff
Have find_intro_circuit return non-open circs
...
svn:r1600
2004-04-13 01:15:06 +00:00
Nick Mathewson
5af7e27c62
Re-number the new relay command so as to maintain backward compatibility. Doh!
...
svn:r1598
2004-04-13 00:38:16 +00:00
Nick Mathewson
a5bfe84509
ACK/NAK INTRODUCE1 requests. (We do no useful processing on them yet)
...
svn:r1597
2004-04-12 23:33:47 +00:00
Roger Dingledine
f4ff5a75c1
break circuit_build_needed_circs into its own func
...
svn:r1596
2004-04-12 22:47:12 +00:00
Roger Dingledine
c5052bec95
normal circs are 3 hops, but rend/intro circs are 4, because
...
the initiator doesn't get to choose the last hop
svn:r1595
2004-04-12 18:40:14 +00:00
Nick Mathewson
fc5a766298
Use service IDs in rendmid. (rendclient and common require no changes, it seems)
...
svn:r1594
2004-04-12 18:10:28 +00:00
Roger Dingledine
2321d21b3b
bump allowed rend desc skew from 60 mins to 90 mins
...
svn:r1593
2004-04-12 09:44:38 +00:00
Nick Mathewson
306adfc8bd
Fix two dumb leaks in crypto.c
...
svn:r1592
2004-04-12 05:27:38 +00:00
Nick Mathewson
1dbf61e7e6
Use service id instead of hex id in rendservice.c log messages. Rendcommon and rendclient will follow tomorrow.
...
svn:r1591
2004-04-12 05:12:50 +00:00
Nick Mathewson
c024745bd4
Cosmetic patch for arma's fix for The Bug: Don't set the state to
...
RESOLVEFAILED if the resolve didn't fail; set it to CONNECTING
instead.
svn:r1590
2004-04-11 17:07:45 +00:00
Roger Dingledine
d8c954e156
continue beating at pieces of The Bug
...
svn:r1588
2004-04-09 21:31:09 +00:00
Roger Dingledine
23c193c065
if dns resolve is valid, but our exit policy rejects it or
...
the connect attempt fails immediately, we were trying to
double-remove it from the dns pending list.
i think this might have been The Bug.
(thanks weasel!)
svn:r1587
2004-04-09 21:06:14 +00:00
Roger Dingledine
8f8d185f4b
give better instructions than just 'mail arma'
...
svn:r1586
2004-04-09 20:23:25 +00:00
Roger Dingledine
48e0228f1e
expire old CIRCUIT_PURPOSE_C_REND_READY circs too
...
svn:r1585
2004-04-09 20:08:13 +00:00
Nick Mathewson
4e1b65f53d
Dump introduction point status on kill -USR1
...
svn:r1584
2004-04-09 20:02:16 +00:00
Nick Mathewson
f9ade70cf9
Resolve init-services-in-do-hup issue
...
svn:r1583
2004-04-09 19:37:50 +00:00
Roger Dingledine
c80b42e17c
don't call rend_services_init right before we fetch the
...
dir, because we call it right after now.
svn:r1582
2004-04-09 19:34:55 +00:00
Roger Dingledine
c5bef32d95
call directory_has_arrived has arrived every time we get
...
a new directory, not just the first time
svn:r1581
2004-04-09 19:30:38 +00:00
Nick Mathewson
c256f2c3a1
Make comment more sensible. Still uncertain about when to call rend_services_init, though.
...
svn:r1580
2004-04-09 17:54:20 +00:00
Nick Mathewson
e6964ed7e6
set rend exit connection state _before_ calling rend_service_set_connection_addr_port and maybe eventually assert_connection_ok. This solves the other half of the bug weasel found.
...
svn:r1579
2004-04-09 17:51:57 +00:00
Nick Mathewson
facb5d4221
Reload rendezvous service keys on sighup; otherwise, we wind up with a
...
bunch of half-initialized services. This should solve half of
weasel's current bug. The crash is the other half.
(arma: should we also call rend_services_init on hup?)
svn:r1578
2004-04-09 17:48:09 +00:00
Peter Palfrader
a1a4c5be19
Update cvsignores
...
svn:r1577
2004-04-09 13:14:52 +00:00
Roger Dingledine
4011906b6b
get more serious about hunting The Bug
...
(it has been haunting us since the days of 0.0.2preX)
svn:r1576
2004-04-09 09:39:42 +00:00
Nick Mathewson
9b436c7f7a
remove a stray printf
...
svn:r1575
2004-04-08 20:59:48 +00:00
Nick Mathewson
aa7cfd93e5
Fix base32 implementation; make base32 implementation follow standard; add more tests for base32
...
svn:r1574
2004-04-08 20:56:33 +00:00
Nick Mathewson
d237692396
Fix unit tests (now that platform code works differently)
...
svn:r1573
2004-04-08 20:22:01 +00:00
Roger Dingledine
3b97a54226
when rend_cache_store warns, give more detail
...
svn:r1572
2004-04-08 20:13:28 +00:00
Nick Mathewson
aa2189b406
note which preexisting or connection we found.
...
svn:r1571
2004-04-08 19:49:55 +00:00
Roger Dingledine
eb9f5a561e
circuit-level sendmes weren't working, because the exit
...
thought it was an exit.
i overhauled the edge_type mechanism. hopefully this will help.
svn:r1570
2004-04-08 09:41:28 +00:00
Roger Dingledine
8e686d0c72
we added more AP conns, oops
...
svn:r1569
2004-04-08 07:25:54 +00:00
Roger Dingledine
4122e2de11
stop being so eager to have rend_cache_store reject the
...
service descriptor
svn:r1566
2004-04-08 05:08:27 +00:00
Nick Mathewson
bb46d782ab
Be endianly-correct for rendezvous functionality
...
svn:r1565
2004-04-08 04:47:39 +00:00
Roger Dingledine
15de201041
log which intro points we picked
...
svn:r1564
2004-04-08 04:36:13 +00:00
Nick Mathewson
2a01e3ad10
Launch intro services after launching connections; allow ORs to build circuits through as-yet-unconnectd ORs
...
svn:r1562
2004-04-08 03:53:39 +00:00
Roger Dingledine
299df7117c
don't try to circuit_log_path if you're at the exit edge of a circ
...
svn:r1561
2004-04-08 03:30:47 +00:00
Nick Mathewson
ede1d3e42d
Invert strcasecmp check for supports-rendezvous
...
svn:r1560
2004-04-08 03:21:15 +00:00
Roger Dingledine
3e7c8a40bc
bugfix: alice would crash if bob advertised 0 intro points
...
svn:r1559
2004-04-08 03:18:03 +00:00
Nick Mathewson
024c059fae
Force tor_malloc(0) to always be sane
...
svn:r1558
2004-04-08 03:05:08 +00:00
Nick Mathewson
40f7324eea
Allow service descriptors with no intro points
...
svn:r1557
2004-04-08 03:02:50 +00:00
Nick Mathewson
8351847afd
Nothing is good enough for you, is it?
...
svn:r1556
2004-04-08 02:50:34 +00:00
Nick Mathewson
14e31fbd71
Use CIRCUIT_IS_ORIGIN in favor of boolean circ->cpath
...
svn:r1555
2004-04-08 02:24:06 +00:00
Roger Dingledine
ad2192c90f
only call circuit_build_failed when we're circ's origin
...
svn:r1554
2004-04-08 02:22:26 +00:00
Roger Dingledine
36d7cc8529
make the max buf size 10 megabytes, not 1 megabyte
...
need to implement flexible buffer sizes soon
svn:r1553
2004-04-08 02:19:35 +00:00
Roger Dingledine
4d194ef13f
clean up rend_client_get_random_intro
...
svn:r1552
2004-04-08 02:11:49 +00:00
Nick Mathewson
46c82e7dbe
Set rend_query on exiting streams
...
svn:r1551
2004-04-08 02:10:43 +00:00
Roger Dingledine
584350feb8
don't log info when we asked for log warn
...
svn:r1548
2004-04-08 01:59:31 +00:00
Nick Mathewson
60772ec90c
Split out major functionality of circuit_get_best; rephrase a few booleans
...
svn:r1547
2004-04-08 01:55:21 +00:00
Nick Mathewson
eaf7c61ebc
Do not crash when no desc is found
...
svn:r1546
2004-04-08 01:54:02 +00:00
Roger Dingledine
9d38311ae3
allow for directories >8192 bytes
...
svn:r1545
2004-04-08 01:47:33 +00:00
Roger Dingledine
47488fa525
allow 90 minutes of clock skew, not 30
...
svn:r1544
2004-04-08 01:08:56 +00:00
Roger Dingledine
e32668ab13
clean up torrc.sample more
...
svn:r1543
2004-04-08 00:49:28 +00:00
Roger Dingledine
6cf584b765
clean up choose_good_exit_server()
...
svn:r1542
2004-04-07 23:31:29 +00:00
Roger Dingledine
63cde97253
don't try to build intro circs until you've fetched the directory
...
svn:r1541
2004-04-07 22:48:06 +00:00
Roger Dingledine
e79a578fec
if the rend desc cache entry was fetched more than 15 mins ago,
...
then try to fetch a new one. but if the new fetch fails, use the
old one.
svn:r1540
2004-04-07 22:41:00 +00:00
Nick Mathewson
09e66bbd14
Freeing the same variable twice in rapid succession can sometimes cause a double-free
...
svn:r1539
2004-04-07 22:25:37 +00:00
Nick Mathewson
6649645f09
Insert a *copy* of our routerinfo into the routerlist.
...
svn:r1538
2004-04-07 22:18:57 +00:00
Nick Mathewson
b1537e7943
Rebuild and re-upload service descriptors every 15 minutes
...
svn:r1537
2004-04-07 22:06:54 +00:00
Nick Mathewson
b07b2cef29
Remember when we received which service desc.
...
svn:r1536
2004-04-07 22:00:54 +00:00
Nick Mathewson
4d14b786da
Make sure we have our own keys before we initialize our routerlist
...
svn:r1535
2004-04-07 21:44:46 +00:00
Nick Mathewson
10b48fee28
Generating data does no good if you make no use of it
...
svn:r1534
2004-04-07 21:44:24 +00:00
Nick Mathewson
8169da5c30
Don't use Tor version 0.0.5 for intro/rendezvous points. (We don't need
...
to worry about 0.0.4 or earlier, because nobody is running them any more.)
svn:r1533
2004-04-07 21:36:03 +00:00
Roger Dingledine
93801ac40d
don't pick myself or my twins as hops when building circuits
...
svn:r1531
2004-04-07 21:12:54 +00:00
Nick Mathewson
2633d353d7
Carefully increment failure counts when appropriate
...
svn:r1530
2004-04-07 20:59:38 +00:00
Roger Dingledine
4df06ab5bb
let bob replenish his intro points and republish service desc
...
as necessary
svn:r1528
2004-04-07 20:47:50 +00:00
Roger Dingledine
505797e998
expire open-but-not-yet-acked circs if they're too old
...
svn:r1526
2004-04-07 20:38:23 +00:00
Roger Dingledine
650d483bea
convince ourselves that circuit_failed doesn't have to be any smarter
...
svn:r1525
2004-04-07 20:23:59 +00:00
Nick Mathewson
789df20e7d
There is no need to cast void* to other pointer types.
...
svn:r1524
2004-04-07 20:11:28 +00:00
Nick Mathewson
dfb009febb
Repair whitespace in windows orconfig.h
...
svn:r1523
2004-04-07 20:01:51 +00:00
Nick Mathewson
3d60cd1d61
Delete trailing whitespace and expand tabs; remove unused aes decrypt code
...
svn:r1522
2004-04-07 19:57:40 +00:00
Nick Mathewson
75c19716a8
Put ourself in router list; act accordingly.
...
svn:r1521
2004-04-07 19:46:27 +00:00