aboutsummaryrefslogtreecommitdiff
path: root/src/or/onion.c
Commit message (Collapse)AuthorAge
* Refactor the heck out of crypto interface: admit that we will stick with one ↵Nick Mathewson2004-04-03
| | | | | | ciphersuite at a time, make const things const, and stop putting openssl in the headers. svn:r1458
* alice can intercept y.onion requests, do a lookup on them via tor,Roger Dingledine2004-04-03
| | | | | | | and receive a 404 svn:r1455
* Hide smartlist internalsNick Mathewson2004-04-03
| | | | svn:r1451
* router_choose_random_node can take a smartlist of nodes to excludeRoger Dingledine2004-04-02
| | | | svn:r1442
* now circuit_get_newest returns an appropriate circ for your purposeRoger Dingledine2004-04-02
| | | | | | | | | | connection_ap_handshake_attach_circuit attaches to a circ of the right purpose add a skeletal rendclient.c svn:r1441
* For hidden services: handle INTRODUCE2, send ESTABLISH_INTRO, RENDEZVOUS1.Nick Mathewson2004-04-01
| | | | | | | | | | | | | 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
* alice chooses her rendezvous node from all running routersRoger Dingledine2004-04-01
| | | | | | | and she can set preferences in her options svn:r1433
* let the circuit-launcher choose the exit node (if he wants)Roger Dingledine2004-04-01
| | | | svn:r1428
* Make smartlist Do What Arma Expects.Nick Mathewson2004-03-30
| | | | svn:r1401
* Remove maximum-size field from smartlistsNick Mathewson2004-03-30
| | | | svn:r1397
* clean up some 'warn' messages while i'm at itRoger Dingledine2004-03-26
| | | | svn:r1342
* isspace and friends take an int. solaris cares.Roger Dingledine2004-03-19
| | | | svn:r1303
* clean up some presentation and commentsRoger Dingledine2004-03-18
| | | | svn:r1294
* make circuit-building less noisy when a node in your exclude/exit/entrynodes ↵Roger Dingledine2004-03-03
| | | | | | is down svn:r1206
* bugfix: only warn about an unrouter router after we've fetched a directoryRoger Dingledine2004-02-29
| | | | svn:r1178
* note bug in assert_connection_okRoger Dingledine2004-02-28
| | | | svn:r1159
* rename ExcludedNodes config option to ExcludeNodesRoger Dingledine2004-02-28
| | | | svn:r1155
* best_support_idx is obsoleteRoger Dingledine2004-02-17
| | | | | | | (also doesn't fix the bug) svn:r1097
* Propagate yes/no/maybe a little farther forward.Nick Mathewson2004-02-17
| | | | svn:r1096
* Let paranoid exit nodes (which default to reject) be exit nodesRoger Dingledine2004-02-17
| | | | | | | | | | | | Before we resolve the hostname, we don't know whether its IP will be accepted or rejected by the exit policy of each host. So we were only going with nodes that would certainly accept -- which was just itys and poblano. (This bug was hidden until now by the earlier port bug.) (Actual bugfix pending on Nick's next commit, hopefully.) svn:r1092
* log when exit situation is hopeless.Nick Mathewson2004-02-04
| | | | svn:r1057
* for perf testing, paths are always 3 hops, not "3 or more"Roger Dingledine2004-01-30
| | | | svn:r1030
* fix a per-circuit memory leakRoger Dingledine2004-01-30
| | | | svn:r1029
* turn some knobs, add more debuggingRoger Dingledine2004-01-30
| | | | svn:r1023
* small default route when doing speed testingRoger Dingledine2004-01-20
| | | | svn:r1010
* resolve cygwin warnings for pre19Roger Dingledine2004-01-08
| | | | svn:r981
* the onionskin challenge length was 30 bytes longer than necessaryRoger Dingledine2004-01-05
| | | | | | | (i think ;) svn:r971
* remove trailing whitespaceRoger Dingledine2003-12-17
| | | | svn:r951
* end-to-end integrity checking now worksRoger Dingledine2003-12-17
| | | | | | | | initialize digests from shared secrets at handshake make circuit_send_next_onion_skin use connection_edge_send_command svn:r948
* move cell size to 512 bytesRoger Dingledine2003-12-16
| | | | | | | | | move length to 2 bytes, put it in the relay header remove 4 reserved bytes in cell add 4 bytes to relay header for the integrity check svn:r942
* add H(K|1) to the onionskin replyRoger Dingledine2003-12-16
| | | | | | | | | | verify it at the client end abstract the onionskin handshake lengths breaks backward compatibility (again) svn:r941
* start to track the 'unexpected relay cell' warningRoger Dingledine2003-12-14
| | | | svn:r928
* add options.ExcludedNodes -- nodes that are never picked in path buildingRoger Dingledine2003-12-14
| | | | svn:r924
* more general cleanupRoger Dingledine2003-12-14
| | | | svn:r915
* make options.ExitNodes workRoger Dingledine2003-12-13
| | | | | | | | if your best choices happen to include any of your preferred exit nodes, you choose among just those preferred exit nodes. svn:r911
* revamp circuit node selection to use smartlists:Roger Dingledine2003-12-13
| | | | | | | | | * now we know for sure if an acceptable node is available; we don't have to keep guessing and checking * we try options.EntryNodes first for picking the first node svn:r904
* use the smartlist to pick random routers, rather than our own idiomRoger Dingledine2003-12-13
| | | | svn:r898
* if >=2 circs are being built that handle a given stream,Roger Dingledine2003-12-12
| | | | | | | no need to have new circs handle it too. svn:r896
* our circuit symmetric key (for aes) is 127 bits, not 128 bits.Roger Dingledine2003-12-09
| | | | | | | we accept that. svn:r892
* general cleanupsRoger Dingledine2003-12-07
| | | | svn:r889
* break routers.c into router.c for stuff the router does,Roger Dingledine2003-12-06
| | | | | | | and routerlist.c for handling routerlist. svn:r887
* terminology shift:Roger Dingledine2003-12-05
| | | | | | | | | | | | | directory is the string that dirserv.c and directory.c deal with routerlist is routerinfo's that are bundled together in routers.c rename some of the get_routerlist functions to set_routerlist preparing to break into router.c for stuff the router does, and routerlist.c for handling routerlist. svn:r886
* pick nodes for a circuit only from those the directory says are upRoger Dingledine2003-12-03
| | | | svn:r880
* stop segfault when choose_good_exit_server returns NULLRoger Dingledine2003-12-03
| | | | svn:r879
* fix vicious bug in connection_ap_attach_pending that caused it toRoger Dingledine2003-12-03
| | | | | | | | | | | never work. fix vicious bug in choose_good_exit_server that caused it to *skip over* pending circuits, and look only at *non-pending circuits*, when choosing a good exit node for the new circuit. bugfix: remove incorrect asserts in circuit_get_newest() svn:r876
* bugfix in exit node choice: we used to find the perfect exit node but ↵Roger Dingledine2003-12-03
| | | | | | | | | | | | | | | | | then use the wrong one. bugfix in connection_ap_can_use_exit: it was using the wrong port bugfix: the OP now handles a port of '*' correctly when the IP is not yet known and it's trying to guess whether a router's exit policy might accept it. we now don't ever pick exit routers which will reject *:* attach_circuit now fails a new stream outright if it will never work. when you get an 'end' cell that resolves an IP, now it will fail the circuit outright if no safe exit nodes exist for that IP. don't try building a new circuit after an 'end' if a suitable one is already on the way. svn:r874
* simplify: options.OnionRouter==1 iff options.ORPort>0Roger Dingledine2003-11-20
| | | | svn:r857
* Patch last patch to last patchNick Mathewson2003-11-19
| | | | svn:r845
* Patch last patch.Nick Mathewson2003-11-19
| | | | svn:r843
* Skip non-running routers for exit node selectionNick Mathewson2003-11-19
| | | | svn:r842