diff options
author | YOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@linux-ipv6.org> | 2013-01-28 05:44:29 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-01-29 15:43:04 -0500 |
commit | 5e98a36ed4bf6ea396170e3af0dd4fcbe51d772f (patch) | |
tree | 948287c0f2960b75f477bc22fe628324b3709add /net | |
parent | 00d3d51e9d8c983e237236a41863d138b7f77ff6 (diff) |
ipv6 addrconf: Fix interface identifiers of 802.15.4 devices.
The "Universal/Local" (U/L) bit must be complmented according to RFC4944
and RFC2464.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/addrconf.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 420e56326384..1b5d8cb9b123 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -1660,6 +1660,7 @@ static int addrconf_ifid_eui64(u8 *eui, struct net_device *dev) | |||
1660 | if (dev->addr_len != IEEE802154_ADDR_LEN) | 1660 | if (dev->addr_len != IEEE802154_ADDR_LEN) |
1661 | return -1; | 1661 | return -1; |
1662 | memcpy(eui, dev->dev_addr, 8); | 1662 | memcpy(eui, dev->dev_addr, 8); |
1663 | eui[0] ^= 2; | ||
1663 | return 0; | 1664 | return 0; |
1664 | } | 1665 | } |
1665 | 1666 | ||