]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Ensure relays must use IPv4, and can use IPv6
authorteor (Tim Wilson-Brown) <teor2345@gmail.com>
Sat, 20 Feb 2016 08:28:51 +0000 (19:28 +1100)
committerteor (Tim Wilson-Brown) <teor2345@gmail.com>
Sat, 20 Feb 2016 08:28:51 +0000 (19:28 +1100)
A mistake in previous refactoring had relays using IPv4 and IPv6.

src/or/policies.c

index 179230b88a742f645963321038bd5a74a1b4a3af..2c24555e9eb45bfb6fd3cb9e2e3e26624ea18120 100644 (file)
@@ -408,13 +408,12 @@ fascist_firewall_allows_address(const tor_addr_t *addr,
     if (tor_addr_family(addr) == AF_INET &&
         (!options->ClientUseIPv4 || (pref_only && pref_ipv6)))
       return 0;
-
-    /* Bridges can always use IPv6 */
-    if (tor_addr_family(addr) == AF_INET6 &&
-        (!fascist_firewall_use_ipv6(options) || (pref_only && !pref_ipv6)))
-      return 0;
   }
 
+  if (tor_addr_family(addr) == AF_INET6 &&
+      (!fascist_firewall_use_ipv6(options) || (pref_only && !pref_ipv6)))
+    return 0;
+
   return addr_policy_permits_tor_addr(addr, port,
                                       firewall_policy);
 }