aboutsummaryrefslogtreecommitdiff
path: root/src/or/rendclient.c
Commit message (Collapse)AuthorAge
* clean up the rendezvous warn log msgs, and downgrade some to infoRoger Dingledine2005-09-09
| | | | svn:r4964
* trivial changes on nick's rendezvous commitRoger Dingledine2005-07-14
| | | | svn:r4553
* Logic to implement rendezvous/introduction via unknown servers.Nick Mathewson2005-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add a new extend_info_t datatype to hold information needed to extend a circuit (addr,port,keyid,onion_key). Use it in cpath and build_state. Make appropriate functions take or return it instead of routerinfo_t or keyid. - #if 0 needless check in circuit_get_by_edge_conn; if nobody triggers this error in 0.1.0.10, nobody will trigger it. - Implement new hidden service descriptor format, which contains "extend info" for introduction points, along with protocol version list. - Parse new format. - Generate new format - Cache old and new formats alongside each other. - Directories serve "old" format if asked in old way, "newest available" format if asked in new way. - Use new format to find introduction points if possible; otherwise fall back. Keep nickname lists and extendinfo lists in sync. - Tests for new format. - Implement new "v2" INTRODUCE cell format. - Accept new format - Use new format if we have a versioned service descriptor that says the server accepts the new format. - Add documentation for functions and data types. svn:r4506
* Docment or add DOCDOC comments to undocumented functions in src/or. Make ↵Nick Mathewson2005-06-11
| | | | | | function definition format uniform. svn:r4411
* Change end-of-file NLNL convention. It turns out arma I and I agree.Nick Mathewson2005-06-09
| | | | svn:r4382
* New whitespace normalization rule: no blank line at EOF.Nick Mathewson2005-06-09
| | | | svn:r4378
* first iteration of scrubbing sensitive strings from logs.Roger Dingledine2005-05-03
| | | | | | | also generally clean up log messages. svn:r4174
* New and frightening code to implement fast-path first-hop CREATE_FAST cells. ↵Nick Mathewson2005-05-02
| | | | | | Watch out when we bump the version to 0.1.0.6-rc! svn:r4162
* hidden service client connections were using some of theirRoger Dingledine2005-04-26
| | | | | | | | | 60 seconds fetching the hidserv descriptor, which made them more likely to fail on the first attempt, yet they work fine on the second. so now give them extra time for the first try. svn:r4127
* Give better warnings if connection_close_unattached_ap gets called twice or ↵Nick Mathewson2005-04-02
| | | | | | called on a marked connection; rename it to connection_mark_unattached_ap. svn:r3990
* update copyright notices.Nick Mathewson2005-04-01
| | | | svn:r3982
* clean up socks reply stuff more.Roger Dingledine2005-03-27
| | | | | | | add a few more reasons so we can be more informative. svn:r3895
* stop most cases of hanging up on a socks connection without sendingRoger Dingledine2005-03-27
| | | | | | | | the socks reject. audit for remaining ones. also make things more uniform so we always remember to hold-open-until-flushed, etc. svn:r3891
* Add a magic value to cpath_layer_t to make sure that we can tell valid ↵Nick Mathewson2005-03-23
| | | | | | cpaths from freed ones. I audited this once; it could use another audit. svn:r3831
* clean up and refactor some moreRoger Dingledine2005-03-22
| | | | svn:r3798
* Implement controller's "extendcircuit" directive.Roger Dingledine2005-03-22
| | | | | | | | Also refactor circuit building so we plan the whole path ahead of time. svn:r3797
* Handle unavailable hidden services better. We try each intro pointRoger Dingledine2005-01-19
| | | | | | | | | | until none are left, then we try to refetch the descriptor. If it's the same one we had before, then close streams right then. Whenever a new stream arrives, even if it's right after, optimistically try refetching the descriptor, just in case. svn:r3379
* bugfix for cvs: we were needing a rendezvous circ, so we cannibalizedRoger Dingledine2005-01-19
| | | | | | | | | a general circ, and called rend_client_rendcirc_has_opened(), which called connection_ap_attach_pending(), which was needing a rendezvous circ, so it cannibalized a general circuit, and called ... svn:r3370
* Introduce a notion of 'internal' circs, which are chosen without regardRoger Dingledine2005-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to the exit policy of the last hop. Intro and rendezvous circs must be internal circs, to avoid leaking information. Resolve and connect streams can use internal circs if they want. New circuit pooling algorithm: make sure to have enough circs around to satisfy any predicted ports, and also make sure to have 2 internal circs around if we've required internal circs lately (with high uptime if we've seen that lately). Split NewCircuitPeriod config option into NewCircuitPeriod (30 secs), which describes how often we retry making new circuits if current ones are dirty, and MaxCircuitDirtiness (10 mins), which describes how long we're willing to make use of an already-dirty circuit. Once rendezvous circuits are established, keep using the same circuit as long as you attach a new stream to it at least every 10 minutes. (So web browsing doesn't require you to build new rend circs every 30 seconds.) Cannibalize GENERAL circs to be C_REND, C_INTRO, S_INTRO, and S_REND circ as necessary, if there are any completed ones lying around when we try to launch one. Re-instate the ifdef's to use version-0 style introduce cells, since there was yet another bug in handling version-1 style. We'll try switching over again after 0.0.9 is obsolete. Bugfix: when choosing an exit node for a new non-internal circ, don't take into account whether it'll be useful for any pending x.onion addresses -- it won't. Bugfix: we weren't actually publishing the hidden service descriptor when it became dirty. So we only published it every 20 minutes or so, which means when you first start your Tor, the hidden service will seem broken. svn:r3360
* start generating version 1 style introduce cellsRoger Dingledine2005-01-13
| | | | svn:r3352
* Use correct logic to decide whether there are more directory servers to retry.Nick Mathewson2005-01-03
| | | | svn:r3257
* clean two more minor memory leaksRoger Dingledine2004-12-07
| | | | svn:r3115
* Spell-check strings and commentsNick Mathewson2004-12-01
| | | | svn:r3052
* Suggestion from weasel: Make tor --version --version dump the cvs Id of ↵Nick Mathewson2004-11-29
| | | | | | every file. svn:r3019
* put in initial support for ".nickname.exit" addresses, to let aliceRoger Dingledine2004-11-29
| | | | | | | | | | decide what exit node to use; based on a patch by geoff goodell. needs more work: e.g. it goes bananas building new circuits when the chosen exit node's exit policy rejects the connection. svn:r3015
* wrong is ok, and right is fine, but in between is apparentlyRoger Dingledine2004-11-28
| | | | | | | totally unacceptable to me. svn:r3005
* Normalize space: add one between every control keyword and control clause.Nick Mathewson2004-11-28
| | | | svn:r3003
* remove emacs droppings, since nick says he doesn't need them anymoreRoger Dingledine2004-11-26
| | | | svn:r2989
* be more greedy about filling up all relay cells.Roger Dingledine2004-11-21
| | | | | | | | this may have some bugs in it still. and it may end up not being what we want to do. svn:r2928
* Resolve a bunch of FIXME items; mark a lot more for attention; ask for ↵Nick Mathewson2004-11-12
| | | | | | clarification on some. Turn all XXXX008 ("showstopper for 0.0.8 release") items into XXXX009 or XXXX, since plainly they were not showstoppers for 0.0.8. Add/clean some docs. svn:r2808
* Normalize whitespace; add a "tell me about all the unnormalized whitespace" ↵Nick Mathewson2004-11-09
| | | | | | target; fix a braino in dirserv.c svn:r2758
* Clean up copyrights.Roger Dingledine2004-11-07
| | | | | | | | Break connection_consider_empty_buckets() out of connection_read_bucket_decrement(). svn:r2698
* canonicalize "src" and "dest" arg order in crypto.c (and others)Roger Dingledine2004-11-02
| | | | svn:r2644
* Hidden service operators had a bug in version 1 style INTRODUCE cellsRoger Dingledine2004-11-01
| | | | | | | | that made them fail. Fix the bug, and revert clients to use version 0 until 0.0.9pre4 is obsolete. svn:r2641
* start generating new version of introduce1 cellsRoger Dingledine2004-10-24
| | | | svn:r2586
* don't assert multiple things in the same tor_assert()Roger Dingledine2004-10-16
| | | | svn:r2544
* Build without warnings on mac gcc 3.3Nick Mathewson2004-10-14
| | | | svn:r2487
* more int to size_t conversions, fixing one or more amd64 bugsRoger Dingledine2004-10-14
| | | | | | | plus a whitespace patch on config.c from vicman svn:r2482
* better warn message for failed hidserv desc fetchRoger Dingledine2004-10-03
| | | | svn:r2412
* More digest/nickname fixesNick Mathewson2004-07-02
| | | | svn:r2000
* Break files apart into more modulesRoger Dingledine2004-05-13
| | | | | | | | | | | | | | | | | | | | | | | | | * \file circuitbuild.c * \brief The actual details of building circuits. * \file circuitlist.c * \brief Manage the global circuit list. * \file circuituse.c * \brief Launch the right sort of circuits, attach streams to them. * \file connection_edge.c * \brief Handle edge streams. * \file onion.c * \brief Functions to queue create cells, and handle onionskin * parsing and creation. * \file relay.c * \brief Handle relay cell encryption/decryption, plus packaging and * receiving from circuits. svn:r1863
* clean up directory.c APIRoger Dingledine2004-05-12
| | | | svn:r1860
* break connection_edge_end out of connection_mark_for_closeRoger Dingledine2004-05-12
| | | | svn:r1858
* Make some functions staticNick Mathewson2004-05-12
| | | | svn:r1857
* More doxygenation.Nick Mathewson2004-05-10
| | | | svn:r1832
* more doxygen markupRoger Dingledine2004-05-09
| | | | | | | plenty more remains svn:r1824
* Comments for nearly all non-tricky filesNick Mathewson2004-05-05
| | | | svn:r1796
* use tor_assertRoger Dingledine2004-04-25
| | | | | | | remove obsolete BUF_OK macro svn:r1697
* when you get an intro ack, don't also count it as an intro nackRoger Dingledine2004-04-18
| | | | svn:r1666
* if an intro circ waiting for an ack dies before getting one, thenRoger Dingledine2004-04-18
| | | | | | | count it as a nack svn:r1665