aboutsummaryrefslogtreecommitdiff
path: root/src/or/onion.c
Commit message (Collapse)AuthorAge
* 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
* bugfix: sometimes we closed a circ while cpuworker was cranking,Roger Dingledine2003-11-18
| | | | | | | and it didn't notice svn:r841
* bugfix: don't ask for ->next of an expired circuitRoger Dingledine2003-11-18
| | | | | | | | | | | | | | | bugfix: keep going when a circ fails in circuit_n_conn_open (make circuit_enumerate_by_naddr_nport obsolete) bugfix: make circuit_n_conn_open only look at circ's that start at us bugfix: only try circuit_n_conn_open if we're an OP. Otherwise we expect connections to always already be up. bugfix: when choosing path length, pay attention to whether the directory says a router is down. bugfix: when picking good exit, skip routers which are known to be down (more work needs to be done on this one) svn:r838
* use the tor_malloc_zero wrapperRoger Dingledine2003-11-18
| | | | svn:r837
* "I don't think it's quite fair to condemn a whole program because of aNick Mathewson2003-11-17
| | | | | | | | single slip-up." -- General "Buck" Turgidson, _Doctor Strangelove_ svn:r828
* comment choose_good_exit_serverNick Mathewson2003-11-17
| | | | svn:r822
* Fix a segfault caused by a weird logic error and masked by another.Nick Mathewson2003-11-17
| | | | svn:r820
* bugfixesRoger Dingledine2003-11-16
| | | | svn:r818
* initial patches on patchesRoger Dingledine2003-11-16
| | | | svn:r814
* Finish implementing the rest of the exitpolicy stuff, except for ↵Nick Mathewson2003-11-16
| | | | | | automatically starting circuit builds. svn:r813
* Improved exit policy syntax; basic client-side DNS caching.Nick Mathewson2003-11-14
| | | | | | | | | | | | | | | | | | | | - Exit policies now support bitmasks (18.0.0.0/255.0.0.0) and bitcounts 18.0.0.0/8. Policies are parsed on startup, not when comparing to them. - desired_path_len is now part of an opaque cpath_build_state_t structure. - END_REASON_EXITPOLICY cells no longer include a port. - RELAY_COMMAND_CONNECTED cells now include the IP address we've connected to. - connection_edge now has a client_dns cache to remember resolved addresses. It gets populated by RELAY_COMMAND_CONNECTED cells and END_REASON_EXITPOLICY cells. It gets used by connection_ap_handshake_send_begin. We don't compare it to exit policies yet. svn:r812
* bump default pathlen to 3; clean up surrounding codeRoger Dingledine2003-11-13
| | | | svn:r810
* lay groundwork for EntryNodes and ExitNodesRoger Dingledine2003-11-12
| | | | svn:r805
* Make crypto_pseudo_rand* never fail.Nick Mathewson2003-11-12
| | | | svn:r797
* Remove dead codeNick Mathewson2003-11-12
| | | | svn:r794
* Compute paths as we build them.Nick Mathewson2003-11-12
| | | | svn:r793