aboutsummaryrefslogtreecommitdiff
path: root/src/or/circuitbuild.c
Commit message (Expand)AuthorAge
* Merge branch 'bug1772' into maint-0.2.2Roger Dingledine2010-09-29
|\
| * fix two castsRoger Dingledine2010-09-29
| * Comment network liveness and change detection behavior.Mike Perry2010-09-29
| * refactor and recomment; no actual changesRoger Dingledine2010-09-29
| * Cap the circuit build timeout to the max time we've seen.•••Also, cap the measurement timeout to 2X the max we've seen. Mike Perry2010-09-29
| * Do away with the complexity of the network liveness detection.•••We really should ignore any timeouts that have *no* network activity for their entire measured lifetime, now that we have the 95th percentile measurement changes. Usually this is up to a minute, even on fast connections. Mike Perry2010-09-29
| * Fix state checks on liveness handling.•••If we really want all this complexity for these stages here, we need to handle it better for people with large timeouts. It should probably go away, though. Mike Perry2010-09-29
| * Fix non-live condition checks.•••Rechecking the timeout condition was foolish, because it is checked on the same codepath. It was also wrong, because we didn't round. Also, the liveness check itself should be <, and not <=, because we only have 1 second resolution. Mike Perry2010-09-29
* | Merge commit 'mikeperry/bug1740' into maint-0.2.2Roger Dingledine2010-09-29
|\|
| * Only count timeout data for 3 hop circuits.•••Use 4/3 of this timeout value for 4 hop circuits, and use half of it for canabalized circuits. Mike Perry2010-09-29
* | improve code comments, based on comments from nickRoger Dingledine2010-09-28
* | handle ugly edge case in retrying entrynodes•••Specifically, a circ attempt that we'd launched while the network was down could timeout after we've marked our entrynodes up, marking them back down again. The fix is to annotate as bad the OR conns that were around before we did the retry, so if a circuit that's attached to them times out we don't do anything about it. Roger Dingledine2010-09-28
* | Actually notice when our last entrynode goes down•••Otherwise we'd never set have_minimum_dir_info to false, so the "optimistic retry" would never trigger. Roger Dingledine2010-09-28
* | optimistically retry EntryNodes on socks request•••We used to mark all our known bridges up when they're all down and we get a new socks request. Now do that when we've set EntryNodes too. Roger Dingledine2010-09-28
* | remove a redundant assertRoger Dingledine2010-09-28
* | refactor; no actual changesRoger Dingledine2010-09-28
* | Merge branch 'maint-0.2.1' into maint-0.2.2Roger Dingledine2010-09-28
|\ \ | |/ |/|
| * actually retry bridges when your network goes awayRoger Dingledine2010-09-28
* | Rename has_completed_circuit to can_complete_circuit•••Also redocument it. Related to #1362. Nick Mathewson2010-09-22
* | A start at a patch for bug 1943 (alignment issues)Roger Dingledine2010-09-20
* | I hear we are close to a release. Clean up the whitespace.Nick Mathewson2010-09-16
* | Fix behavior of adding a cell to a blocked queue.•••We frequently add cells to stream-blocked queues for valid reasons that don't mean we need to block streams. The most obvious reason is if the cell arrives over a circuit rather than from an edge: we don't block circuits, no matter how full queues get. The next most obvious reason is that we allow CONNECTED cells from a newly created stream to get delivered just fine. This patch changes the behavior so that we only iterate over the streams on a circuit when the cell in question came from a stream, and we only block the stream that generated the cell, so that other streams can still get their CONNECTEDs in. Nick Mathewson2010-09-02
* | Make Sebastian's bug1831 branch build with --enable-gcc-warningsNick Mathewson2010-08-15
* | Fix misplaced labelsSebastian Hahn2010-08-16
* | Refactor circuit_build_times_parse_state•••Remove the msg parameter to pass an error message out. This wasn't needed and made it harder to detect a memory leak. Sebastian Hahn2010-08-16
* | Fix a memory leak in circuit_build_times_parse_state•••Thanks weasel for noticing. Sebastian Hahn2010-08-16
* | Create routerparse.hSebastian Hahn2010-07-27
* | Create rephist.hSebastian Hahn2010-07-27
* | Create relay.hSebastian Hahn2010-07-27
* | Create policies.hSebastian Hahn2010-07-27
* | Create onion.hSebastian Hahn2010-07-27
* | Create networkstatus.hSebastian Hahn2010-07-27
* | Create main.hSebastian Hahn2010-07-27
* | Create directory.hSebastian Hahn2010-07-27
* | Create control.hSebastian Hahn2010-07-27
* | Create connection_or.hSebastian Hahn2010-07-27
* | Create connection_edge.hSebastian Hahn2010-07-27
* | Create connection.hSebastian Hahn2010-07-27
* | Create config.hSebastian Hahn2010-07-27
* | Create circuituse.hSebastian Hahn2010-07-27
* | Create circuitlist.hSebastian Hahn2010-07-27
* | Create circuitbuild.hSebastian Hahn2010-07-27
* | Create routerlist.hSebastian Hahn2010-07-27
* | Create router.hSebastian Hahn2010-07-27
* | mike needs DEFAULT_ROUTE_LEN in other filesRoger Dingledine2010-07-21
* | naked constants are badRoger Dingledine2010-07-20
* | Make the controller act more usefully when GETINFO fails•••Right now it says "552 internal error" because there's no way for getinfo_helper_*() countries to specify an error message. This patch changes the getinfo_helper_*() interface, and makes most of the getinfo helpers give useful error messages in response to failures. This should prevent recurrences of bug 1699, where a missing GeoIPFile line in the torrc made GETINFO ip-to-county/* fail in a "not obvious how to fix" way. Nick Mathewson2010-07-18
* | More gracefully handle corrupt state files.•••Save a backup if we get odd circuitbuildtimes and other state info. In the case of circuit build times, we no longer assert, and reset our state. Mike Perry2010-07-06
* | Fix unittest failure in bug 1660.•••We now record large times as abandoned, to prevent a filter step from happening and skewing our results. Also, issue a warn for a rare case that can happen for funky values of Xm or too many abandoned circuits. Can happen (very rarely) during unit tests, but should not be possble during live operation, due to network liveness filters and discard logic. Mike Perry2010-07-06
* | Fix bugs with assuming time_t can be implicitly cast to long•••Many friendly operating systems have 64-bit times, and it's not nice to pass them to an %ld format. It's also extremely not-nice to write a time to the log as an integer. Most people think it's 2010 June 29 23:57 UTC+epsilon, not 1277855805+epsilon. Nick Mathewson2010-06-29