Эх сурвалжийг харах

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>
YOSHIFUJI Hideaki / 吉藤英明 12 жил өмнө
parent
commit
5e98a36ed4

+ 1 - 0
net/ipv6/addrconf.c

@@ -1660,6 +1660,7 @@ static int addrconf_ifid_eui64(u8 *eui, struct net_device *dev)
 	if (dev->addr_len != IEEE802154_ADDR_LEN)
 	if (dev->addr_len != IEEE802154_ADDR_LEN)
 		return -1;
 		return -1;
 	memcpy(eui, dev->dev_addr, 8);
 	memcpy(eui, dev->dev_addr, 8);
+	eui[0] ^= 2;
 	return 0;
 	return 0;
 }
 }