aboutsummaryrefslogtreecommitdiff
path: root/src/or/circuituse.c
Commit message (Collapse)AuthorAge
* bugfix and cleanups re: entry guards.Roger Dingledine2006-10-06
| | | | svn:r8620
* r8861@totoro: nickm | 2006-10-03 14:49:54 -0400Nick Mathewson2006-10-03
| | | | | | | Fix bug in r8579: TrackHostExits .foo.bar implies TrackHostExits foo.bar; also fix logic error. svn:r8592
* r8850@totoro: nickm | 2006-10-02 17:21:11 -0400Nick Mathewson2006-10-02
| | | | | | | Make TrackExitHosts case-insensitive, and fix the behavior of .suffix TrackExitHosts items to avoid matching in the middle of an address. (Resolves an XXXX) svn:r8579
* if we fail to build a circuit to an intended enclave, and it'sRoger Dingledine2006-10-01
| | | | | | | not mandatory that we use that enclave, stop wanting it. svn:r8559
* r8973@Kushana: nickm | 2006-09-28 16:53:19 -0400Nick Mathewson2006-09-28
| | | | | | | | | | Refactor entry guard status logic a lot; allow more factors [like not having a Guard flag or being listed in ExcludeNodes] to render a guard "unlisted" (now called "unusable"); track guard down status (now called "unreachable") separately from is_running. svn:r8519
* r8895@Kushana: nickm | 2006-09-21 20:05:11 -0400Nick Mathewson2006-09-22
| | | | | | | Debug client-side reverse dns code. svn:r8452
* r8881@Kushana: nickm | 2006-09-21 17:27:59 -0400Nick Mathewson2006-09-21
| | | | | | | Allow resolve requests to non-exits when they are specifically requested (via resolve foo.bar.exit). svn:r8446
* r8877@Kushana: nickm | 2006-09-21 17:12:33 -0400Nick Mathewson2006-09-21
| | | | | | | Consider non-exit servers unsuitable for RESOLVE commands. svn:r8442
* good god, that was a bad idea. i've built 500 circuits in the past 5Roger Dingledine2006-09-18
| | | | | | | minutes, trying to establish reachability of my unreachable server. svn:r8415
* build testing circuits more rapidly. this has a failure modeRoger Dingledine2006-09-17
| | | | | | | | where if circuits fail quickly, we'll fail a lot of them very quickly and not retry for a while. so be it. svn:r8407
* make my bandwidth exercises actually happenRoger Dingledine2006-09-15
| | | | svn:r8400
* Send out a burst of long-range drop cells after we've established thatRoger Dingledine2006-09-15
| | | | | | | | we're reachable. Spread them over 4 circuits, so hopefully a few will be fast. This exercises our bandwidth and bootstraps us quicker. svn:r8399
* r8576@Kushana: nickm | 2006-08-25 17:16:01 -0400Nick Mathewson2006-08-25
| | | | | | | Fix bug 314: Instead of checking address_in_virtualrange, check addressmap_have_mapping(). This should be more accurate. [Rename to addressmap_have_mapping() from addressmap_already_mapped().] svn:r8226
* r6922@Kushana: nickm | 2006-07-26 16:32:24 -0400Nick Mathewson2006-07-27
| | | | | | | Rename some fields, compress a bitfield, and document some structs and fields svn:r6919
* r6909@Kushana: nickm | 2006-07-26 13:05:58 -0400Nick Mathewson2006-07-26
| | | | | | | Clean up wide lines from last patch. svn:r6907
* r6908@Kushana: nickm | 2006-07-26 12:38:52 -0400Nick Mathewson2006-07-26
| | | | | | | Refactor connection_t into edge, or, dir, control, and base subtypes. This might save some RAM on busy exit servers, but really matters most in terms of correctness. svn:r6906
* r6902@Kushana: nickm | 2006-07-25 17:30:27 -0400Nick Mathewson2006-07-26
| | | | | | | Move rend_query to origin_circuit_t where it belongs; save another 17 bytes per OR circuit. svn:r6903
* Don't tell anybody, but we're going OO here. This patch splitsNick Mathewson2006-07-23
| | | | | | | | | | | | | | | circuit_t into origin_circuit_t and or_circuit_t. I fixed some segaults; there may be more. We still need to move more rendezvous stuff into subtypes. This is a trial run for splitting up connection_t; if the approach is insane, please say so soon so we can do something smarter. Also, this discards the old HALF_OPEN code, which nobody seems to want. svn:r6817
* If we are using an exit enclave and we can't connect, e.g. becauseRoger Dingledine2006-07-18
| | | | | | | | its webserver is misconfigured to not listen on localhost, then back off and try connecting from somewhere else before we fail. svn:r6783
* pick a log domain; resolve an xxxxRoger Dingledine2006-07-18
| | | | svn:r6782
* remove a bit more obsolete codeRoger Dingledine2006-06-08
| | | | svn:r6566
* don't tell people that the testing circuit failed if we alreadyRoger Dingledine2006-06-05
| | | | | | | consider ourselves reachable. this just confuses them. svn:r6546
* simplify some code, since circuit_build_failed() is only calledRoger Dingledine2006-06-05
| | | | | | | on non-open circuits. svn:r6540
* Add a new warning to our "warn a lot" list: unused parameters. This means ↵Nick Mathewson2006-06-04
| | | | | | we have to explicitly "use" unuseds, but it can catch bugs. (It caught two coding mistakes so far.) svn:r6532
* stop fetching descriptors if we're not a dir mirror and weRoger Dingledine2006-05-30
| | | | | | | haven't tried to establish any circuits lately. svn:r6516
* forward-port: "Resolve" all XXX011 items, mostly by marking them non-011.Nick Mathewson2006-04-18
| | | | svn:r6396
* Don't yell loudly about failed internal/bridge connections. TheseRoger Dingledine2006-04-09
| | | | | | | | are reachability testing and rendserv upload/downloads, and they have their own failure messages elsewhere. svn:r6343
* Refactor and consolidate addr/exit policies into a new policies.c.Roger Dingledine2006-03-27
| | | | | | | Fix some minor bugs and memory leaks along the way. svn:r6246
* whoops. inform circuits again when we failed to connect to theirRoger Dingledine2006-03-22
| | | | | | | first hop, so they don't have to time out. svn:r6225
* parameterize two more timeout constants in circuit-land.Roger Dingledine2006-03-22
| | | | svn:r6220
* new config option SocksTimeout: How long do we let a socks connectionRoger Dingledine2006-03-21
| | | | | | | | | | wait unattached before we fail it? Use this value for controller socks timeout, for normal socks timeout, and for hidden-service socks timeout. svn:r6217
* don't call circuit_n_conn_done() if the closing conn is already open.Roger Dingledine2006-03-21
| | | | svn:r6214
* Be more patient before giving up on in-progress circuits.Roger Dingledine2006-03-21
| | | | | | | | I have absolutely no idea if this change helps or hurts. Somebody should study this. svn:r6212
* Finish the transition from the word 'verified' to the wordsRoger Dingledine2006-03-19
| | | | | | | 'named' and 'valid'. svn:r6188
* Comments: cleanups and additions.Nick Mathewson2006-03-17
| | | | svn:r6174
* Cleanup on time-relaqted constants. New conventions:Nick Mathewson2006-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Surround all constants by (parens), whether we'll be using them in a denominator or not. 2) Express all time periods as products (24*60*60), not as multiplied-out constants (86400). 3) Comments like "(60*60) /* one hour */" are as pointless as comments like "c = a + b; /* set c to the sum of a and b */". Remove them. 4) All time periods should be #defined constants, not given inline. 5) All time periods should have doxygen comments. 6) All time periods, unless specified, are in seconds. It's not necessary to say so. To summarize, the old (lack of) style would allow: #define FOO_RETRY_INTERVAL 60*60 /* one hour (seconds) */ next_try = now + 3600; The new style is: /** How often do we reattempt foo? */ #define FOO_RETRY_INTERVAL (60*60) next_try = now + RETRY_INTERVAL; svn:r6142
* Add some functions to escape values from the network before sending them to ↵Nick Mathewson2006-03-05
| | | | | | the log. Use them everywhere except for routerinfo->plaftorm, routerinfo->contact_info, and rend*.c. (need sleep now) svn:r6087
* convert some more source files to the new log conventionRoger Dingledine2006-02-13
| | | | svn:r6002
* Retry pending server downloads as well as pending networkstatus downloads ↵Nick Mathewson2006-02-11
| | | | | | when we unexpectedly get an app connection svn:r5962
* Happy new year!Roger Dingledine2006-02-09
| | | | svn:r5949
* entry nodes are now entry guards.Roger Dingledine2006-01-10
| | | | | | | this is our last easy chance for a wholesale change. heave ho. svn:r5782
* Add reasons to DESTROY and RELAY_TRUNCATED cells.Nick Mathewson2006-01-05
| | | | svn:r5734
* helper nodes are dead. long live entry nodes.Roger Dingledine2005-12-28
| | | | | | | | (config options EntryNodes and StrictEntryNodes still not implemented.) svn:r5673
* fix a spacing problem introduced by our 80-column requirementRoger Dingledine2005-12-27
| | | | svn:r5669
* if the network is down, and we try to connect to a conn because weRoger Dingledine2005-12-27
| | | | | | | | | have a circuit in mind, and we timeout (30 seconds) because the network never answers, we were expiring the circuit, but we weren't obsoleting the connection or telling the helper functions. now do that. svn:r5668
* Clean fake_status a bit. Switch from has_fetched_directory to ↵Nick Mathewson2005-12-15
| | | | | | have_minimum_dir_info, and make the latter function smarter. svn:r5591
* Bite the bullet and limit all our source lines to 80 characters, the way IBM ↵Nick Mathewson2005-12-14
| | | | | | intended. svn:r5582
* mark the helper node as down if we time-out on the circuit handshakeRoger Dingledine2005-12-11
| | | | | | | with him. svn:r5567
* when we changed from log_fn to debug/info/notice/warn/err,Roger Dingledine2005-12-10
| | | | | | | | | | | | we screwed up the formatting in wild and unpredictable ways. fix it before it becomes convention to format logs in wild and unpredictable ways. still need to do src/common/ someday. svn:r5551
* Better fix for last bug: avoids trying to double-mark circuits.Nick Mathewson2005-12-05
| | | | svn:r5511