aboutsummaryrefslogtreecommitdiff
path: root/src/or/connection_edge.c
Commit message (Expand)AuthorAge
...
* Raise common code for "detach this stream and try it with a different circuit...•••svn:r3756 Nick Mathewson2005-03-14
* Implement the common case of ATTACHSTREAM.•••svn:r3751 Nick Mathewson2005-03-12
* Increment step of a for loop should only happen once.•••svn:r3746 Nick Mathewson2005-03-11
* Get address map resetting implemented.•••svn:r3745 Nick Mathewson2005-03-11
* Finish implementing GETINFO; make it easy to query address maps.•••svn:r3732 Nick Mathewson2005-03-03
* Implement new controller events for changed descriptors and new (not-yet-atta...•••svn:r3731 Nick Mathewson2005-03-02
* Separate reverse-virtual-address-map entries into ipv4 and hostname slots. Ot...•••svn:r3730 Nick Mathewson2005-03-02
* Rename unused-address functions to virtual address; this is more accurate. A...•••svn:r3728 Nick Mathewson2005-03-02
* Implement "Dont-Care" from addresses to MapAddress control message. For safe...•••svn:r3725 Nick Mathewson2005-03-02
* Still more code to make sure we send the right number and kind of RELAY END c...•••svn:r3723 Nick Mathewson2005-03-02
* Revise all calls to connection_edge_end to avoid sending MISC, and to take er...•••svn:r3720 Nick Mathewson2005-03-01
* Forward-port new reasons; clean up code more; add code to convert new reasons...•••svn:r3719 Nick Mathewson2005-03-01
* cache .exit address better (i think)•••svn:r3684 Roger Dingledine2005-02-24
* Clarify comment. Use CONN_IS_EDGE more. Try to be more zealous about calling ...•••svn:r3671 Nick Mathewson2005-02-23
* clarify comment•••svn:r3667 Nick Mathewson2005-02-23
* Addressmap tweak: Make "addressmap x x" remove any mapping from the address x.•••svn:r3666 Nick Mathewson2005-02-23
* Change from inet_ntoa to a threadproof tor_inet_ntoa.•••svn:r3656 Nick Mathewson2005-02-22
* make the addressmap internals less noisy•••svn:r3643 Roger Dingledine2005-02-22
* Add a new AddressMap directive to rewrite incoming socks addresses.•••Add a new TrackHostExits directive to trigger addressmaps for certain incoming socks addresses, for sites that break when your exit keeps changing. Redo the client-side dns cache so it's just an addressmap too. svn:r3641 Roger Dingledine2005-02-22
* forward-port some fixes•••svn:r3631 Roger Dingledine2005-02-17
* Fix another crash bug found by Jaroslaw--it is possible for dns_resolve to ma...•••svn:r3623 Nick Mathewson2005-02-14
* Add more functions to free things to help dmalloc allong.•••svn:r3613 Nick Mathewson2005-02-10
* Avoid double-free on tor-resolve failure•••svn:r3567 Nick Mathewson2005-02-05
* Fix tor-resolve implementation to prevent crashes and send resolves when we s...•••svn:r3561 Nick Mathewson2005-02-05
* forward-port the logic skew and double-free thing•••svn:r3549 Roger Dingledine2005-02-04
* reject odd-looking addresses at the client, rather than having•••the server drop them because they're malformed. svn:r3493 Roger Dingledine2005-02-01
* define TOR_FRAGILE if you want tor to give you a core when•••something goes wrong. this should only be used by people actively tracking bugs. svn:r3487 Roger Dingledine2005-02-01
* stop a sigpipe.•••apparently when we get an eof, at least sometimes it *does* mean you'd better not try writing. svn:r3481 Roger Dingledine2005-01-31
* forward-port the dns and maxconn fixes•••svn:r3448 Roger Dingledine2005-01-28
* 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
* get rid of 0.0.8 backwards compatibility•••svn:r3353 Roger Dingledine2005-01-13
* Make Tor use Niels Provos's libevent instead of it's current•••poll-but-sometimes-select mess. This will let us use faster async cores (like epoll, kpoll, and /dev/poll), and hopefully work better on Windows too. There are some fairly nasty changes to main.c here; this will almost certainly break something. But hey, that's what alphas are for. svn:r3341 Nick Mathewson2005-01-12
* don't connection_edge_end() on eof if we're already marked for close,•••because if we are then it's because we already got an end. svn:r3223 Roger Dingledine2004-12-24
* clean up logging,•••make it clearer which warns are bugs, make the control log event match its specification, point out a bug in how we deal with failure when renewing the tls context. svn:r3138 Roger Dingledine2004-12-13
* resolve tequila's crash bug: you can't free something•••and then keep using it. svn:r3117 Roger Dingledine2004-12-07
* fix the other half of the pipe race•••svn:r3111 Roger Dingledine2004-12-07
* answer resolved ip in network order•••svn:r3087 Roger Dingledine2004-12-06
* avoid using uninitialized variable•••svn:r3086 Roger Dingledine2004-12-06
* don't use cache for resolving .foo.exit names, but do reply immediately•••if we're asked to resolve an IP.foo.exit. svn:r3085 Roger Dingledine2004-12-06
* fix indenting•••svn:r3084 Roger Dingledine2004-12-06
* check if we have a cached resolve for a tor-resolve address *after*•••we remove the .foo.exit part of the address. svn:r3082 Roger Dingledine2004-12-05
* New circuit building strategy: keep a list of ports that we've used in ...•••that will handle each such port. (We can extend this to include addresses if exit policies shift to require that.) Seed us with port 80 so web browsers won't complain that Tor is "slow to start up". This was necessary because our old circuit building strategy just involved counting circuits, and as time went by we would build up a big pile of circuits that had peculiar exit policies (e.g. only exit to 9001-9100) which would take up space in the circuit pile but never get used. Fix router_compare_addr_to_addr_policy: it was not treating a port of * as always matching, so we were picking reject *:* nodes as exit nodes too. If you haven't used a clean circuit in an hour, throw it away, just to be on the safe side. This means after 6 hours a totally unused Tor client will have no circuits open. svn:r3078 Roger Dingledine2004-12-05
* Now we allow writing to the buffer even when the stream if marked for•••close, if we're planning to wait to flush it. This is important because we were sending a socks reject back if we're closing and hadn't already sent one, but it wasn't actually getting written since the conn was already marked-for-close. svn:r3074 Roger Dingledine2004-12-04
* React to eof immediately on non-open edge connections.•••Stop keeping track of num_retries for apconns, since they expire after 60 seconds anyway. When warning about retrying or giving up, print the address, so the user knows which one it's talking about. svn:r3073 Roger Dingledine2004-12-04
* bugfix: When we were checking to see if an ap_conn should time out•••waiting for its connected cell, we were calculating time from when the ap_conn was created. So if it waited say 20 seconds before being attached, then we would immediately decide that the circuit had timed out. Also, make circuit_dump_by_conn() display actual circuit progress, including circuits that haven't been attached to the conn yet but hope to when it finishes connecting. svn:r3072 Roger Dingledine2004-12-04
* Add function to check that addr_policy_t is okay; change struct addr_policy_t...•••svn:r3070 Nick Mathewson2004-12-04
* clean up the other "Tell Roger" log that dfc keeps getting•••svn:r3042 Roger Dingledine2004-11-30
* Let resolve conns retry/expire also, rather than sticking around forever.•••Put the check-if-requested-exitrouter-will-reject-us code in the circuit_attach loop, so it gets checked periodically and not just once at the beginning. This is useful in case the routerlist changes, but also in case the address gets resolved into something that we learn we'll reject. svn:r3039 Roger Dingledine2004-11-30
* refuse .exit addresses immediately if the requested node would•••refuse the request (e.g. due to exit policy or wrong version) svn:r3038 Roger Dingledine2004-11-30
* Fix last patch•••svn:r3031 Nick Mathewson2004-11-30