aboutsummaryrefslogtreecommitdiff
path: root/src/or/rendservice.c
Commit message (Expand)AuthorAge
...
* Change from inet_ntoa to a threadproof tor_inet_ntoa.•••svn:r3656 Nick Mathewson2005-02-22
* Add more functions to free things to help dmalloc allong.•••svn:r3613 Nick Mathewson2005-02-10
* Introduce a notion of 'internal' circs, which are chosen without regard•••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 Roger Dingledine2005-01-17
* when the hidden service launches a rendezvous circ, make sure it•••provides good uptime if any virtual_port of the service wants that. svn:r3355 Roger Dingledine2005-01-14
* start generating version 1 style introduce cells•••svn:r3352 Roger Dingledine2005-01-13
* Annotate circuits w/ whether they aim to contain high uptime nodes and/or•••high capacity nodes. When building circuits, choose appropriate nodes. New config option LongLivedPorts to indicate application streams that will want high uptime circuits. When attaching a stream to a circuit, pay attention to its requirements. This means that every single node in an intro rend circuit, not just the last one, will have a minimum uptime. Boost the min uptime from an hour to 24 hours. svn:r3339 Roger Dingledine2005-01-12
* fix a minor leak for people offering hidden services•••svn:r3113 Roger Dingledine2004-12-07
* Spell-check strings and comments•••svn:r3052 Nick Mathewson2004-12-01
* Suggestion from weasel: Make tor --version --version dump the cvs Id of every...•••svn:r3019 Nick Mathewson2004-11-29
* Normalize space: add one between every control keyword and control clause.•••svn:r3003 Nick Mathewson2004-11-28
* remove emacs droppings, since nick says he doesn't need them anymore•••svn:r2989 Roger Dingledine2004-11-26
* Normalize a few more kinds of whitespace. We now dislike:••• - func (args) - if (x){ This doesn't normalize if(x), for(x); while(x), and friends. svn:r2943 Nick Mathewson2004-11-22
* Break DirFetchPostPeriod into:••• - DirFetchPeriod for fetching full directory, - StatusFetchPeriod for fetching running-routers, - DirPostPeriod for posting server descriptor, - RendPostPeriod for posting hidden service descriptors. Also make sure the hidden service descriptors are at a random offset from each other, to hinder linkability. svn:r2889 Roger Dingledine2004-11-15
* Make check_private_dir trimodal (check/create/ignore), not bimodal (create/ig...•••svn:r2733 Nick Mathewson2004-11-09
* Separate validate from activate. Document undocumented stuff in config.c.•••svn:r2711 Nick Mathewson2004-11-08
* Clean up copyrights.•••Break connection_consider_empty_buckets() out of connection_read_bucket_decrement(). svn:r2698 Roger Dingledine2004-11-07
* Make options no longer a global variable.•••Now we can try setting an option but back out if it fails to parse, or if it's disallowed (e.g. changing RunAsDaemon from 1 to 0). Use parse_line_from_str rather than parse_line_from_file. svn:r2692 Roger Dingledine2004-11-06
* canonicalize "src" and "dest" arg order in crypto.c (and others)•••svn:r2644 Roger Dingledine2004-11-02
* Hidden service operators had a bug in version 1 style INTRODUCE cells•••that made them fail. Fix the bug, and revert clients to use version 0 until 0.0.9pre4 is obsolete. svn:r2641 Roger Dingledine2004-11-01
* Fix paul gardner's assert bug. Turns out when circuit_launch_by_nickname()•••failed at the first hop, it would try to relaunch another circ right then, even though the first circuit hadn't been populated yet with its pending_final_cpath. svn:r2624 Roger Dingledine2004-10-30
* Use strlcpy, not strcpy.•••svn:r2610 Nick Mathewson2004-10-27
* Use tor_snprintf, not snprintf•••svn:r2609 Nick Mathewson2004-10-27
* Replace sprintf with snprintf•••svn:r2602 Nick Mathewson2004-10-27
* fix a memory leak•••svn:r2587 Roger Dingledine2004-10-24
* start generating new version of introduce1 cells•••svn:r2586 Roger Dingledine2004-10-24
* don't assert multiple things in the same tor_assert()•••svn:r2544 Roger Dingledine2004-10-16
* Change interface of parse_addr_port() to return address in host order, since ...•••svn:r2542 Nick Mathewson2004-10-16
* bugfix: parse_addr_port() bites us again -- it returns addr in network order.•••svn:r2508 Roger Dingledine2004-10-14
* Build without warnings on mac gcc 3.3•••svn:r2487 Nick Mathewson2004-10-14
* more int to size_t conversions, fixing one or more amd64 bugs•••plus a whitespace patch on config.c from vicman svn:r2482 Roger Dingledine2004-10-14
* fix warning about always-false comparison; detect too-large realport better•••svn:r2465 Nick Mathewson2004-10-13
* parse HttpProxy address in config•••fix a potential confusion in fetch_from_buf_http() make all our int config options non-negative better bounds checking on options that are ports svn:r2456 Roger Dingledine2004-10-12
* Better bounds checking on parsed ints•••svn:r2450 Nick Mathewson2004-10-12
* Use parse_addr_port() function instead of ad-hoc variants•••svn:r2441 Nick Mathewson2004-10-12
* fix a rare seg fault for people running hidden services on•••intermittent connections svn:r2353 Roger Dingledine2004-09-20
* Some platforms have weird translations when you open files in "test" mode; ma...•••svn:r2336 Nick Mathewson2004-09-08
* Revert dumb think-o. Just because _some_ INTRODUCE2 cells are now longer,•••doesn't mean we should raise the _minimum_ size. svn:r2273 Nick Mathewson2004-08-18
* Support new INTRODUCE2 cell format•••svn:r2270 Nick Mathewson2004-08-18
* use unverified routers in the desired positions•••svn:r2249 Roger Dingledine2004-08-17
* Update to new choose_random_node interface.•••svn:r2239 Nick Mathewson2004-08-15
* o clients choose nodes proportional to advertised bandwidth•••o and/or while avoiding unreliable nodes, depending on goals o 'fascistfirewall' option to pick dirservers on port 80 and ORs on port 443. o if a begin failed due to exit policy, but we believe the IP should have been allowed, switch that router to exitpolicy reject *:* until we get our next directory. svn:r2231 Roger Dingledine2004-08-15
* hex_encode is obsoleted by base16_encode, and never actually worked in the fi...•••svn:r2175 Nick Mathewson2004-08-07
* stop using atexit() to remove our pid, since it's called•••immediately when we daemonize. also drop our retry period for hidserv desc uploads from 10m to 5m svn:r2111 Roger Dingledine2004-07-22
* now base16_encode() and base32_encode() can't ever fail•••svn:r2103 Roger Dingledine2004-07-22
* More digest/nickname fixes•••svn:r2000 Nick Mathewson2004-07-02
* crank up some of our constants, for better scalability•••svn:r1938 Roger Dingledine2004-06-02
* router_choose_random_node() was ignoring its routerlist argument.•••so now we don't pass it one. svn:r1911 Roger Dingledine2004-05-20
* Resolve some XXXs•••svn:r1889 Nick Mathewson2004-05-18
* Only try to launch a fixed number of intro circuits for a service per 15-minu...•••svn:r1883 Nick Mathewson2004-05-18
* Break files apart into more modules••• * \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 Roger Dingledine2004-05-13