diff options
author | Nick Mathewson <nickm@torproject.org> | 2012-10-04 10:31:25 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2012-10-04 10:31:25 -0400 |
commit | 03e4b5a9d7ab918dcd121f0ac4586e798e7ff5b0 (patch) | |
tree | 0a82ee0eb13313b04d12e7e3d3e0d816758f1e8b /src/or/nodelist.c | |
parent | d9847165e0f8b6528acdf3e7246c454c3c4b1597 (diff) | |
parent | ce553d49821cf96666afe2380b2409329c71cd8b (diff) | |
download | tor-03e4b5a9d7ab918dcd121f0ac4586e798e7ff5b0.tar.gz tor-03e4b5a9d7ab918dcd121f0ac4586e798e7ff5b0.zip |
Merge remote-tracking branch 'linus/bug6757'
Diffstat (limited to 'src/or/nodelist.c')
-rw-r--r-- | src/or/nodelist.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/or/nodelist.c b/src/or/nodelist.c index 642816cca3..29b6047ac8 100644 --- a/src/or/nodelist.c +++ b/src/or/nodelist.c @@ -872,18 +872,23 @@ node_get_prim_orport(const node_t *node, tor_addr_port_t *ap_out) void node_get_pref_orport(const node_t *node, tor_addr_port_t *ap_out) { + const or_options_t *options = get_options(); tor_assert(ap_out); /* Cheap implementation of config option ClientUseIPv6 -- simply - don't prefer IPv6 when ClientUseIPv6 is not set. (See #4455 for - more on this subject.) Note that this filter is too strict since - we're hindering not only clients! Erring on the safe side - shouldn't be a problem though. XXX move this check to where - outgoing connections are made? -LN */ - if (get_options()->ClientUseIPv6 == 1 && node_ipv6_preferred(node)) + don't prefer IPv6 when ClientUseIPv6 is not set and we're not a + client running with bridges. See #4455 for more on this subject. + + Note that this filter is too strict since we're hindering not + only clients! Erring on the safe side shouldn't be a problem + though. XXX move this check to where outgoing connections are + made? -LN */ + if ((options->ClientUseIPv6 || options->UseBridges) && + node_ipv6_preferred(node)) { node_get_pref_ipv6_orport(node, ap_out); - else + } else { node_get_prim_orport(node, ap_out); + } } /** Copy the preferred IPv6 OR port (IP address and TCP port) for |