Hi all,

Now I have a question about the macro of IN6_IS_ADDR_LINKLOCAL.
Accroding KAME implementation, in kame/sys/netinet6/in6.h,
IN6_IS_ADDR_LINKLOCAL is defined  as:

#define IN6_IS_ADDR_LINKLOCAL(a)        \
        (((a)->s6_addr[0] == 0xfe) && (((a)->s6_addr[1] & 0xc0) == 0x80))

In this case, the linklocal address would be
in the range of 'fe80:' - 'febf:'.
 fe80 : 1111 1110 1000 0000
 febf : 1111 1110 1011 1111

On the other hand, according to 2.5.6 of RFC3513, link local address
is defined as:

   |   10     |
   |  bits    |         54 bits         |          64 bits           |
   +----------+-------------------------+----------------------------+
   |1111111010|           0             |       interface ID         |
   +----------+-------------------------+----------------------------+

In this case, the linklocal address must be 'fe80:0:0:0::/64'.

Does anybody know why KAME implementation doesn't verify if 54 bits is 
zero.

Thanks,
YT


---------------------------------------------------------------------
The IPv6 Users Mailing List
Unsubscribe by sending "unsubscribe users" to [EMAIL PROTECTED]

Reply via email to