Commit ec8b579e authored by Martin Mareš's avatar Martin Mareš
Browse files

Recognize site scope for IPv4 addresses (prefixes reserved for private

networks).

Removed old #ifndef logic which was used to avoid IPv4/IPv6 clashes
before conditionals in Modules lists were introduced.
parent 59e2188c
...@@ -2,6 +2,8 @@ Core ...@@ -2,6 +2,8 @@ Core
~~~~ ~~~~
* protocols: implement dumping of protocol-dependent rte attributes * protocols: implement dumping of protocol-dependent rte attributes
- io.c: refuse old-style multicasts for unnumbered interfaces?
- prefer loopback addresses as router IDs (dummy interface?) - prefer loopback addresses as router IDs (dummy interface?)
- config: executable config files - config: executable config files
......
...@@ -6,8 +6,6 @@ ...@@ -6,8 +6,6 @@
* Can be freely distributed and used under the terms of the GNU GPL. * Can be freely distributed and used under the terms of the GNU GPL.
*/ */
#ifndef IPV6
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
...@@ -24,6 +22,10 @@ ipv4_classify(u32 a) ...@@ -24,6 +22,10 @@ ipv4_classify(u32 a)
{ {
if (b == 0x7f) if (b == 0x7f)
return IADDR_HOST | SCOPE_HOST; return IADDR_HOST | SCOPE_HOST;
else if (b == 0x0a ||
(a & 0xffff0000) == 0xc0a80000 ||
(a & 0xfff00000) == 0xac100000)
return IADDR_HOST | SCOPE_SITE;
else else
return IADDR_HOST | SCOPE_UNIVERSE; return IADDR_HOST | SCOPE_UNIVERSE;
} }
...@@ -92,5 +94,3 @@ ip_pton(char *a, ip_addr *o) ...@@ -92,5 +94,3 @@ ip_pton(char *a, ip_addr *o)
*o = ipa_from_u32(ia); *o = ipa_from_u32(ia);
return 1; return 1;
} }
#endif
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment