aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-04-02 08:51:47 -0400
committerNick Mathewson <nickm@torproject.org>2018-04-02 08:51:47 -0400
commit3df954549232bf5516ba5fce13c66a3ac91524a4 (patch)
tree58db6263c68f50e6eed13723fd5feb58e715e69c
parent61905932565a8ff426981d77bf162f85e7f6c3ea (diff)
parent961d2ad597134df0171dbbed2e035ae93e2215c6 (diff)
downloadtor-3df954549232bf5516ba5fce13c66a3ac91524a4.tar.gz
tor-3df954549232bf5516ba5fce13c66a3ac91524a4.zip
Merge branch 'maint-0.3.3'
-rw-r--r--changes/bug223108
-rw-r--r--src/or/dirserv.c1
2 files changed, 9 insertions, 0 deletions
diff --git a/changes/bug22310 b/changes/bug22310
new file mode 100644
index 0000000000..c8017daffe
--- /dev/null
+++ b/changes/bug22310
@@ -0,0 +1,8 @@
+ o Major bugfixes (performance, load balancing):
+ - Directory authorities no longer vote in favor of the Guard flag
+ for relays that don't advertise directory support. Starting in Tor
+ 0.3.0.1-alpha, Tor clients have been avoiding using such relays in
+ the Guard position, leading to increasingly broken load balancing
+ for the 5%-or-so of Guards that don't advertise directory support.
+ Fixes bug 22310; bugfix on 0.3.0.6.
+
diff --git a/src/or/dirserv.c b/src/or/dirserv.c
index 7dae5ee9d1..68727f0718 100644
--- a/src/or/dirserv.c
+++ b/src/or/dirserv.c
@@ -2266,6 +2266,7 @@ set_routerstatus_from_routerinfo(routerstatus_t *rs,
rs->is_valid = node->is_valid;
if (node->is_fast && node->is_stable &&
+ ri->supports_tunnelled_dir_requests &&
((options->AuthDirGuardBWGuarantee &&
routerbw_kb >= options->AuthDirGuardBWGuarantee/1000) ||
routerbw_kb >= MIN(guard_bandwidth_including_exits_kb,