From: Roger Dingledine Date: Wed, 14 Jun 2006 11:06:43 +0000 (+0000) Subject: bugfix: discourage picking directory authorities as our TestVia X-Git-Tag: tor-0.1.1.23~222 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=09dfe1b2658a4f92b2f3e6f70ffbcd04d64585e0;p=thirdparty%2Ftor.git bugfix: discourage picking directory authorities as our TestVia hops, even if they're running the right versions, since we probably already have a connection established to them. svn:r6622 --- diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c index 2fdf6dfddb..14b1f97cce 100644 --- a/src/or/circuitbuild.c +++ b/src/or/circuitbuild.c @@ -1459,7 +1459,8 @@ onion_append_to_cpath(crypt_path_t **head_ptr, crypt_path_t *new_hop) /** Pick a random server digest that's running a Tor version that * doesn't have the reachability bug. These are versions 0.1.1.22+ - * and 0.1.2.1-alpha+. + * and 0.1.2.1-alpha+. Avoid picking authorities, since we're + * probably already connected to them. * * We only return one, so this doesn't become stupid when the * whole network has upgraded. */ @@ -1480,7 +1481,8 @@ compute_preferred_testing_list(const char *answer) if (r->is_running && r->is_valid && ((tor_version_as_new_as(r->platform,"0.1.1.21-cvs") && !tor_version_as_new_as(r->platform,"0.1.2.0-alpha-cvs")) || - tor_version_as_new_as(r->platform,"0.1.2.1-alpha"))) + tor_version_as_new_as(r->platform,"0.1.2.1-alpha")) && + !router_get_trusteddirserver_by_digest(r->cache_info.identity_digest)) smartlist_add(choices, r)); router = smartlist_choose(choices); smartlist_free(choices);