tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 265cca935aefd1a3bdbe6abc964858e10fb4a029
parent 9d7fca2306dc09097a24e225de59fb1ade7c9e34
Author: Nick Mathewson <nickm@torproject.org>
Date:   Tue, 11 May 2021 15:54:14 -0400

Ignore MAX_BANDWIDTH_CHANGE_FREQ on testing networks.

Part of the ever-growing 40337 fix.

Diffstat:
Mchanges/ticket40337 | 3+++
Msrc/feature/relay/router.c | 5++++-
2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/changes/ticket40337 b/changes/ticket40337 @@ -11,3 +11,6 @@ immediately from startup. Previously, they waited until they had been running for a full day. Closes ticket 40337. + - Relays on testing networks no longer rate-limit how frequently + they are willing to report new bandwidth measurements. Part of a fix + for ticket 40337. diff --git a/src/feature/relay/router.c b/src/feature/relay/router.c @@ -2599,7 +2599,10 @@ check_descriptor_bandwidth_changed(time_t now) if ((prev != cur && (!prev || !cur)) || cur > (prev * BANDWIDTH_CHANGE_FACTOR) || cur < (prev / BANDWIDTH_CHANGE_FACTOR) ) { - if (last_changed+MAX_BANDWIDTH_CHANGE_FREQ < now || !prev) { + const bool change_recent_enough = + last_changed+MAX_BANDWIDTH_CHANGE_FREQ < now; + const bool testing_network = get_options()->TestingTorNetwork; + if (change_recent_enough || testing_network || !prev) { log_info(LD_GENERAL, "Measured bandwidth has changed; rebuilding descriptor."); mark_my_descriptor_dirty("bandwidth has changed");