aboutsummaryrefslogtreecommitdiff
path: root/src/or/circuitbuild.c
Commit message (Expand)AuthorAge
* 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
* Merge remote branch 'public/rand_double2'Nick Mathewson2010-06-29
|\
| * Make cbt_generate_sample use crypto_rand_double()•••Possible workaround for bug 1139, if anybody cares. Nick Mathewson2010-06-25
* | Merge remote branch 'mikeperry/cbt-bugfixes3'Nick Mathewson2010-06-29
|\ \ | |/ |/|
| * Add CLOSE_MS and CLOSE_RATE keywords to buildtimeout event.Mike Perry2010-06-15
| * Split the circuit timeout and close codepaths.•••We need to record different statistics at point of timeout, vs the point of forcible closing. Also, give some better names to constants and state file variables to indicate they are not dealing with timeouts, but abandoned circuits. Mike Perry2010-06-15
| * Fix initialization and reset issues with close_ms.•••Also clean up some log messages. Mike Perry2010-06-15
| * Keep circuits open until the greater of 95th CDF percentile or 60s.•••This is done to provide better data to our right-censored Pareto model. We do this by simply marking them with a new purpose. Mike Perry2010-06-09
| * Make the Xm mode selection a consensus parameter.Mike Perry2010-06-09
| * Add timeout count state variable.Mike Perry2010-06-09
| * Remove synthetic timeout code in favor of better Pareto model.Mike Perry2010-06-09
| * Improve log message about large timeouts and fix some typos.Mike Perry2010-06-09
| * Fix CBT unit tests.Mike Perry2010-05-12
| * Fix comments from Sebastian + Nick's code review.•••Check for overflow in one place, and be consistent about type usage. Mike Perry2010-05-10
| * Bug 1296: Add option+logic to disable CBT learning.•••There are now four ways that CBT can be disabled: 1. Network-wide, with the cbtdisabled consensus param. 2. Via config, with "LearnCircuitBuildTimeout 0" 3. Via config, with "AuthoritativeDirectory 1" 4. Via a state file write failure. Mike Perry2010-05-10
| * Bug 1357: Store the suspended timeout value to resume.•••This prevents a spurious warning where we have a timeout just after deciding our network came back online. Mike Perry2010-05-10
| * Bug 1245: Ignore negative and large timeouts.•••This should prevent some asserts and storage of incorrect build times for the cases where Tor is suspended during a circuit construction, or just after completing a circuit. The idea is that if the circuit build time is much greater than we would have cut it off at, we probably had a suspend event along this codepath, and we should discard the value. Mike Perry2010-05-10
| * Bump timeout calculation message to notice when timeout changes.Mike Perry2010-05-10
| * Add consensus parameter for max synthetic quantile.•••In case we decide that the timeout rate is now too high due to our change of the max synthetic quantile value, this consensus parameter will allow us to restore it to the previous value. Mike Perry2010-05-10
| * Add a TIMEOUT_RATE keyword to buildtimeout event.Mike Perry2010-05-10
| * Bug 1335: Implement filtering step to remove+prevent high timeouts.•••This is for the other issue we saw in Bug 1335. A large number of high timeouts were causing the timeout calculation to slowly drift upwards, especially in conditions of load. This fix repeatedly regenerates all of our synthetic timeouts whenever the timeout changes, to try to prevent drift. It also lowers the timeout cap to help for some cases of Bug 1245, where some timeout values were so large that we ended up allocating a ton of scratch memory to count the histogram bins. The downside is that lowering this cap is affecting our timeout rate. Unfortunately, the buildtimeout quantile is now higher than the actual completion rate by what appears to be about 7-10%, which probably represents the skew in the distribution due to lowering this synthetic cap. Mike Perry2010-05-10
| * Bug 1335: Alter Xm calculation to be weighted avg of top N=3 modes.•••In my state files, I was seeing several peaks, probably due to different guards having different latency. This change is meant to better capture this behavior and generate more reasonable timeouts when it happens. It is improving the timeout values for my collection of state files. Mike Perry2010-05-10
* | Let bridge users use the non-primary address of a multi-homed bridgeRoger Dingledine2010-06-03
* | Don't use "try" as an identifier•••C allows try, but some windows CE headers like to redefine 'try' to be a reserved word. valerino2010-05-20
|/
* Merge branch 'asprintf'Nick Mathewson2010-04-02
|\
| * Add a tor_asprintf() function, and use it in a couple of places.•••asprintf() is a GNU extension that some BSDs have picked up: it does a printf into a newly allocated chunk of RAM. Our tor_asprintf() differs from standard asprintf() in that: - Like our other malloc functions, it asserts on OOM. - It works on windows. - It always sets its return-field. Nick Mathewson2010-02-25
* | Merge remote branch 'origin/maint-0.2.1'•••Conflicts: src/common/test.h src/or/test.c Nick Mathewson2010-02-27
|\ \