diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2009-09-08 13:45:02 +0200 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2009-09-08 13:45:02 +0200 |
commit | be862406627da3bd1facea9309b3f32e67422eab (patch) | |
tree | a1463c4feca6145d4a2e36b39c893a7253316b73 /lib/ipv6.h | |
parent | f9c799a00e705b1420b214628c2bb2a30bf491d9 (diff) | |
download | bird-be862406627da3bd1facea9309b3f32e67422eab.tar bird-be862406627da3bd1facea9309b3f32e67422eab.zip |
Temporary OSPFv3 development commit.
Finally, it is working.
Diffstat (limited to 'lib/ipv6.h')
-rw-r--r-- | lib/ipv6.h | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -60,6 +60,7 @@ typedef struct ipv6_addr { #define ipa_hton(x) ipv6_hton(&(x)) #define ipa_ntoh(x) ipv6_ntoh(&(x)) #define ipa_classify(x) ipv6_classify(&(x)) +#define ipa_has_link_scope(x) ipv6_has_link_scope(&(x)) /* ipa_opposite and ipa_class_mask don't make sense with IPv6 */ /* ipa_from_u32 and ipa_to_u32 replaced by ipa_build */ #define ipa_build(a,b,c,d) _MI(a,b,c,d) @@ -81,6 +82,11 @@ int ipv6_compare(ip_addr, ip_addr); int ipv4_pton_u32(char *, u32 *); void ipv6_absolutize(ip_addr *, ip_addr *); +static inline int ipv6_has_link_scope(ip_addr *a) +{ + return ((a->addr[0] & 0xffc00000) == 0xfe800000); +} + /* * This hash function looks well, but once IPv6 enters * mainstream use, we need to check that it has good |