Merge remote-tracking branch 'teor/bug17153'

This commit is contained in:
Nick Mathewson 2016-03-11 11:23:58 -05:00
commit a86f78a9f2
2 changed files with 10 additions and 2 deletions

4
changes/bug17153 Normal file
View File

@ -0,0 +1,4 @@
o Minor bugfixes (test networks, IPv6):
- Allow internal IPv6 addresses in descriptors in test networks.
Fixes bug 17153; bugfix on 6b4af1071 in 0.2.3.16-alpha.
Patch by "teor", reported by "karsten".

View File

@ -1941,7 +1941,11 @@ router_build_fresh_descriptor(routerinfo_t **r, extrainfo_t **e)
! p->server_cfg.no_advertise && ! p->server_cfg.no_advertise &&
! p->server_cfg.bind_ipv4_only && ! p->server_cfg.bind_ipv4_only &&
tor_addr_family(&p->addr) == AF_INET6) { tor_addr_family(&p->addr) == AF_INET6) {
if (! tor_addr_is_internal(&p->addr, 0)) { /* Like IPv4, if the relay is configured using the default
* authorities, disallow internal IPs. Otherwise, allow them. */
const int default_auth = (!options->DirAuthorities &&
!options->AlternateDirAuthority);
if (! tor_addr_is_internal(&p->addr, 0) || ! default_auth) {
ipv6_orport = p; ipv6_orport = p;
break; break;
} else { } else {
@ -1949,7 +1953,7 @@ router_build_fresh_descriptor(routerinfo_t **r, extrainfo_t **e)
log_warn(LD_CONFIG, log_warn(LD_CONFIG,
"Unable to use configured IPv6 address \"%s\" in a " "Unable to use configured IPv6 address \"%s\" in a "
"descriptor. Skipping it. " "descriptor. Skipping it. "
"Try specifying a globally reachable address explicitly. ", "Try specifying a globally reachable address explicitly.",
tor_addr_to_str(addrbuf, &p->addr, sizeof(addrbuf), 1)); tor_addr_to_str(addrbuf, &p->addr, sizeof(addrbuf), 1));
} }
} }