From: Nick Mathewson Date: Thu, 5 May 2016 12:16:36 +0000 (-0400) Subject: Merge branch 'feature18483-028-v2-squashed' into maint-0.2.8 X-Git-Tag: tor-0.2.8.3-alpha~41 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=68d913c49c7aff441fc6671406aee5137f36f620;p=thirdparty%2Ftor.git Merge branch 'feature18483-028-v2-squashed' into maint-0.2.8 --- 68d913c49c7aff441fc6671406aee5137f36f620 diff --cc src/or/routerlist.c index 2167ae2bf6,6a293b7ccb..97512d7969 --- a/src/or/routerlist.c +++ b/src/or/routerlist.c @@@ -1743,11 -1746,13 +1744,11 @@@ router_pick_directory_server_impl(dirin try_ip_pref)) smartlist_add(is_trusted ? trusted_tunnel : is_overloaded ? overloaded_tunnel : tunnel, (void*)node); - else if (skip_dir || + else if (!must_have_or && (skip_dir || fascist_firewall_allows_rs(status, FIREWALL_DIR_CONNECTION, - try_ip_pref)) + try_ip_pref))) smartlist_add(is_trusted ? trusted_direct : is_overloaded ? overloaded_direct : direct, (void*)node); - else if (!tor_addr_is_null(&status->ipv6_addr)) - ++n_not_preferred; } SMARTLIST_FOREACH_END(node); if (smartlist_len(tunnel)) { @@@ -1888,10 -1894,12 +1890,10 @@@ router_pick_trusteddirserver_impl(cons fascist_firewall_allows_dir_server(d, FIREWALL_OR_CONNECTION, try_ip_pref)) smartlist_add(is_overloaded ? overloaded_tunnel : tunnel, (void*)d); - else if (skip_dir || + else if (!must_have_or && (skip_dir || fascist_firewall_allows_dir_server(d, FIREWALL_DIR_CONNECTION, - try_ip_pref)) + try_ip_pref))) smartlist_add(is_overloaded ? overloaded_direct : direct, (void*)d); - else if (!tor_addr_is_null(&d->ipv6_addr)) - ++n_not_preferred; } SMARTLIST_FOREACH_END(d);