Browse Source

Oops. 0.0.0.0/8 and 169.254.0.0/16 are also special.

svn:r5536
Nick Mathewson 20 years ago
parent
commit
338f23114f
2 changed files with 7 additions and 5 deletions
  1. 6 5
      doc/tor.1.in
  2. 1 0
      src/or/config.c

+ 6 - 5
doc/tor.1.in

@@ -387,11 +387,12 @@ For example, "reject 127.0.0.1:*,reject 192.168.1.0/24:*,accept *:*" would
 reject any traffic destined for localhost and any 192.168.1.* address, but
 reject any traffic destined for localhost and any 192.168.1.* address, but
 accept anything else.
 accept anything else.
 
 
-To specify all internal networks (including 169.254.0.0/16,
-127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8, and 172.16.0.0/12), you can use
-the "private" alias instead of an address.  For example, to allow HTTP
-to 127.0.0.1 and block all other connections to internal networks, you
-can say "accept 127.0.0.1:80,reject private:*".  See RFC 3330 for more
+To specify all internal and link-local networks (including 0.0.0.0/8,
+169.254.0.0/16, 127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8, and
+172.16.0.0/12), you can use the "private" alias instead of an address.
+For example, to allow HTTP to 127.0.0.1 and block all other
+connections to internal networks, you can say "accept
+127.0.0.1:80,reject private:*".  See RFC 1918 and RFC 3330 for more
 details about internal and reserved IP address space.
 details about internal and reserved IP address space.
 
 
 This directive can be specified multiple times so you don't have to put
 This directive can be specified multiple times so you don't have to put

+ 1 - 0
src/or/config.c

@@ -2777,6 +2777,7 @@ static int
 config_expand_exit_policy_aliases(smartlist_t *entries)
 config_expand_exit_policy_aliases(smartlist_t *entries)
 {
 {
   static const char *prefixes[] = {
   static const char *prefixes[] = {
+    "0.0.0.0/8", "169.254.0.0/16",
     "127.0.0.0/8", "192.168.0.0/16", "10.0.0.0/8", "172.16.0.0/12",NULL };
     "127.0.0.0/8", "192.168.0.0/16", "10.0.0.0/8", "172.16.0.0/12",NULL };
   int i;
   int i;
   char *pre=NULL, *post=NULL;
   char *pre=NULL, *post=NULL;