- May 08, 2018
-
-
Nick Mathewson authored
-
Roger Dingledine authored
Stop saying in the manual that clients cache ipv4 dns answers from exit relays. We haven't used them since 0.2.6.3-alpha, and in ticket 24050 we stopped even caching them as of 0.3.2.6-alpha, but we forgot to say so in the man page. Fixes bug 26052; bugfix on 0.3.2.6-alpha.
-
- May 07, 2018
-
-
Nick Mathewson authored
Our previous algorithm had a nonzero probability of picking no events to cancel, which is of course incorrect. The new code uses Vitter's good old reservoir sampling "algorithm R" from 1985. Fixes bug 26008; bugfix on 0.2.6.3-alpha.
-
Nick Mathewson authored
This functionality was covered only accidentally by our voting-test code, and as such wasn't actually tested at all. The tests that called it made its coverage nondeterministic, depending on what time of day you ran the tests. Closes ticket 26014.
-
- May 02, 2018
-
-
Nick Mathewson authored
This test was using the current time to pick the time period number, and a randomly generated hs key. Therefore, it sometimes picked an index that would wrap around the example dht, and sometimes would not. The fix here is just to fix the time period and the public key. Fixes bug 25997; bugfix on 0.3.2.1-alpha.
-
teor authored
When directory authorities read a zero-byte bandwidth file, they log a warning with the contents of an uninitialised buffer. Log a warning about the empty file instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
-
George Kadianakis authored
-
Neel Chauhan authored
-
- May 01, 2018
-
-
Nick Mathewson authored
This test, in test_client_pick_intro(), will have different coverage depending on whether it selects a good intro point the first time or whether it has to try a few times. Since it produces the shorter coverage with P=1/4, repeat this test 64 times so that it only provides reduced coverage with P=1/2^128. The performance cost is negligible. Closes ticket 25996. This test was introduced in 0.3.2.1-alpha.
-
Nick Mathewson authored
I'd prefer not to do this for randomized tests, but as things stand with this test, it produces nondeterministic test coverage. Closes ticket 25995; bugfix on 0.2.2.2-alpha when this test was introduced.
-
Mike Perry authored
Also emit a rate limited log message when they happen, since they are likely correlated with other issues.
-
Nick Mathewson authored
Arguably, the conditions under which these events happen should be a bit different, but the rules are complex enough here that I've tried to have this commit be pure refactoring. Closes ticket 25952. Finally, before this code goes away, take a moment to look at the amazing way that we used to try to have an event happen every N seconds: get_uptime() / N != (get_uptime()+seconds_elapsed) / N Truly, it is a thing of wonder. I'm glad we didn't start using this pattern everywhere else.
-
David Goulet authored
Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
Nick Mathewson authored
Closes ticket25937.
-
Nick Mathewson authored
This is now handled as-needed as the control module is flushing its own callbacks. Closes ticket 25951.
-
-
Mike Perry authored
-
- Apr 30, 2018
-
-
Nick Mathewson authored
Closes ticket 25948.
-
- Apr 29, 2018
-
-
Neel Chauhan authored
-
- Apr 27, 2018
-
-
-
Nick Mathewson authored
Closes ticket 25949.
-
Implement the ability to set flags per events which influences the set up of the event. This commit only adds one flag which is "need network" meaning that the event is not enabled if tor has disabled the network or if hibernation mode. Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
- Apr 26, 2018
-
-
Mike Perry authored
Prior to #23100, we were not counting HS circuit build times in our calculation of the timeout. This could lead to a condition where our timeout was set too low, based on non HS circuit build times, and then we would abandon all HS circuits, storing no valid timeouts in the histogram. This commit avoids the assert.
-
Nick Mathewson authored
Implements ticket 25932.
-
Nick Mathewson authored
The change here was very simple, since there is a flag set whenever we want to schedule this event. Closes ticket 25391. m
-
Nick Mathewson authored
Previously were using this value to have a cheap highish-resolution timer. But we were only using it in one place, and current dogma is to use monotime_coarse_t for this kind of thing.
-
Nick Mathewson authored
This part of the code was the only part that used "cached getttimeofday" feature, which wasn't monotonic, which we updated at slight expense, and which I'd rather not maintain.
-
- Apr 23, 2018
-
-
David Goulet authored
Fixes #25901 Signed-off-by:
David Goulet <dgoulet@torproject.org>
-
Nick Mathewson authored
Fixes bug 24969; bugfix on 0.2.5.1-alpha when the sandbox was introduced.
-
Nick Mathewson authored
-
-
Nick Mathewson authored
(Ticket 24378; proposal 290.)
-
- Apr 22, 2018
-
-
Nick Mathewson authored
-
Nick Mathewson authored
-
- Apr 20, 2018
-
-
Nick Mathewson authored
Patch from CTassisF.
-
- Apr 18, 2018
-
-
Nick Mathewson authored
Implements 25814.
-
Nick Mathewson authored
-
Nick Mathewson authored
-
- Apr 17, 2018
-
-
Nick Mathewson authored
Now that we update our buckets on demand before reading or writing, we no longer need to update them all every TokenBucketRefillInterval msec. When a connection runs out of bandwidth, we do need a way to reenable it, however. We do this by scheduling a timer to reenable all blocked connections for TokenBucketRefillInterval msec after a connection becomes blocked. (If we were using PerConnBWRate more, it might make sense to have a per-connection timer, rather than a single timeout. But since PerConnBWRate is currently (mostly) unused, I'm going to go for the simpler approach here, since usually whenever one connection has become blocked on bandwidth, most connections are blocked on bandwidth.) Implements ticket 25373.
-
Nick Mathewson authored
We used to do this 10x per second in connection_buckets_refill(); instead, we now do it when the bucket becomes empty. This change is part of the work of making connection_buckets_refill() obsolete. Closes ticket 25828; bugfix on 0.2.3.5-alpha.
-