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
Roger Dingledine
f4ff5a75c1
break circuit_build_needed_circs into its own func
...
svn:r1596
2004-04-12 22:47:12 +00:00
Roger Dingledine
48e0228f1e
expire old CIRCUIT_PURPOSE_C_REND_READY circs too
...
svn:r1585
2004-04-09 20:08:13 +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
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
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
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
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
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
3d60cd1d61
Delete trailing whitespace and expand tabs; remove unused aes decrypt code
...
svn:r1522
2004-04-07 19:57:40 +00:00
Roger Dingledine
3c683a9e7c
let alice reuse recent rendjoin circs
...
svn:r1519
2004-04-07 19:22:55 +00:00
Roger Dingledine
cf67520e95
when counting how many being-built circs will handle a stream,
...
don't count ones that are too old
svn:r1517
2004-04-07 19:14:33 +00:00
Roger Dingledine
95f0e36f08
alice just fetched bob's hidden webpage.
...
yay.
svn:r1512
2004-04-06 21:52:01 +00:00
Roger Dingledine
d473cf7ee9
set the circ windows on the middle hop of the rend circs
...
svn:r1511
2004-04-06 21:25:11 +00:00
Roger Dingledine
5eca39cdb4
checkpoint commit: rend closer to working, still not there yet
...
svn:r1506
2004-04-06 20:25:18 +00:00
Nick Mathewson
6290d027c9
Continue attack on magic numbers; use new crypto wrappers where possible
...
svn:r1504
2004-04-06 20:16:12 +00:00
Roger Dingledine
2bb18e62cb
make rend apconn send to the right cpath layer
...
and fix circuit_log_path to know about rend circs
svn:r1496
2004-04-05 22:01:35 +00:00
Nick Mathewson
b1a8b208ca
Make init_cpath_crypto able to handle both sides of handshake, by adding a "reverse" flag
...
svn:r1489
2004-04-05 20:53:04 +00:00
Roger Dingledine
7793078dff
alice can now look up bob's service descriptor,
...
choose an intro point, connect to it,
choose a rend point, connect to it and establish a cookie,
get an ack from the rendezvous point,
and know when both circs are ready for her.
APConns don't use conn->purpose anymore
don't initiate a renddesc lookup if one is already in progress
also fix a buffer overflow in nickname parsing (only exploitable
by the operator though)
svn:r1471
2004-04-05 00:47:48 +00:00
Roger Dingledine
86f2ddc88d
nick, can you make and send the rendezvous cookie?
...
svn:r1467
2004-04-03 04:05:30 +00:00
Nick Mathewson
ba196a9d17
Use (set|get)_uint(16|32) in lieu of memcpy where reasonable.
...
svn:r1462
2004-04-03 03:07:25 +00:00
Roger Dingledine
8a1ad2b84e
more progress on alice's side
...
svn:r1461
2004-04-03 03:06:06 +00:00
Nick Mathewson
137b577bbd
Refactor the heck out of crypto interface: admit that we will stick with one ciphersuite at a time, make const things const, and stop putting openssl in the headers.
...
svn:r1458
2004-04-03 02:40:30 +00:00
Roger Dingledine
8c19d6e3d7
alice can intercept y.onion requests, do a lookup on them via tor,
...
and receive a 404
svn:r1455
2004-04-03 01:59:53 +00:00
Nick Mathewson
fc4d15baf6
Hide smartlist internals
...
svn:r1451
2004-04-03 00:58:54 +00:00
Roger Dingledine
bbc9484957
fix some bugs; more remain
...
svn:r1450
2004-04-03 00:55:53 +00:00
Roger Dingledine
2202c2c7ec
AP conns use conn->rend_query now too
...
expose connection_ap_handshake_attach_circuit()
svn:r1448
2004-04-02 23:54:48 +00:00
Nick Mathewson
2bc2f1ed03
Finish renaming rend_service field
...
svn:r1447
2004-04-02 23:44:46 +00:00
Roger Dingledine
a8d805e292
break out circ->rend_service
...
(this breaks the compile; must fix things)
let alice react when she learns a new rendezvous descriptor
let alice launch intro and rend circuits and mark them with her query
svn:r1446
2004-04-02 23:38:26 +00:00
Nick Mathewson
e8345bfced
refactor; start adding debugging logs to midpoint rend stuff
...
svn:r1445
2004-04-02 23:30:54 +00:00
Roger Dingledine
f34e6da3e7
now circuit_get_newest returns an appropriate circ for your purpose
...
connection_ap_handshake_attach_circuit attaches to a circ of the
right purpose
add a skeletal rendclient.c
svn:r1441
2004-04-02 22:23:15 +00:00
Nick Mathewson
a981c4099a
Implement midpoint functionality for rendezvous points.
...
svn:r1439
2004-04-02 21:56:52 +00:00
Nick Mathewson
79fc52170e
For hidden services: handle INTRODUCE2, send ESTABLISH_INTRO, RENDEZVOUS1.
...
Also:
- Add a pending final cpath element to build_state
- Rename S_RENDEZVOUSING to S_CONNECT_REND
- Add [CS]_REND_JOINED
- Split out logic to initialize cpath crypto objects.
- Have circuits/cpaths remember the KH element from their handshake, so they
can use it for other authentication later. (As in ESTABLISH_INTRO)
svn:r1438
2004-04-01 22:21:01 +00:00
Roger Dingledine
05b99bcf7d
alice chooses her rendezvous node from all running routers
...
and she can set preferences in her options
svn:r1433
2004-04-01 20:33:29 +00:00
Nick Mathewson
103b8ead40
Finish implementing what-bob-does-on-INTRODUCE2
...
svn:r1432
2004-04-01 20:05:57 +00:00
Roger Dingledine
cc3c4245cb
let the circuit-launcher choose the exit node (if he wants)
...
svn:r1428
2004-04-01 03:44:49 +00:00
Roger Dingledine
d01497cf3c
outline what bob does to initialize his hidden services
...
let circuit_launch_new return the circ it just made
svn:r1424
2004-04-01 03:23:28 +00:00
Roger Dingledine
d13857a3f0
put in hooks for alice and bob logic when circuits finish/fail
...
let you specify the purpose of circuits you launch
bugfix: we used to be declaring the first successful circuit too early -- when the first hop finished. now we're more accurate.
svn:r1421
2004-04-01 01:57:22 +00:00
Roger Dingledine
ee45ae575d
allow conns to demand to be attached to a clean circuit
...
(nobody uses this yet)
svn:r1417
2004-03-31 23:06:16 +00:00
Nick Mathewson
93ab51e9ac
Make smartlist Do What Arma Expects.
...
svn:r1401
2004-03-30 22:59:00 +00:00
Nick Mathewson
0ba9ab5fb0
Add rendezvous-related metadata and code to circuits. Initially, we
...
thought that a complicated adjunct structure would be necessary, but
it doesn't look that way anymore.
Of course, I might have forgotten something.
svn:r1396
2004-03-30 19:52:42 +00:00
Roger Dingledine
524312494b
use 'notice' loglevel for things the operator should hear
...
but that aren't warnings
svn:r1384
2004-03-30 03:15:53 +00:00
Nick Mathewson
d44e3ad809
Remove unused open circuits when there are too many, not when they are too old.
...
svn:r1332
2004-03-21 06:33:57 +00:00
Nick Mathewson
b3f6b55ea1
Dont expire circuits we didnt originate. This may be redundant somehow, but better safe than sorry.
...
svn:r1331
2004-03-21 05:01:06 +00:00
Nick Mathewson
b7c2b18bd6
Add a RunTesting option to try to learn link state by creating test circuits, even when SocksPort is off.
...
svn:r1327
2004-03-21 03:03:10 +00:00
Roger Dingledine
4f0bad280d
make servers not crash when they rep-hist-note circuits that don't start at them
...
svn:r1317
2004-03-20 20:21:20 +00:00