From eb4b183040a2dba3c765ebd8a19c303fa48005ff Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Fri, 12 Jun 2015 07:59:12 -0700 Subject: [PATCH] ipv6_ll_address_to_mac() fails to correctly convert fe80::a8aa:aaff:feaa:aaf8 to AA:AA:AA:AA:AA:F8 --- zebra/interface.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/zebra/interface.c b/zebra/interface.c index cd9c21a61c..3d3ced3ff8 100644 --- a/zebra/interface.c +++ b/zebra/interface.c @@ -533,8 +533,7 @@ if_delete_update (struct interface *ifp) void ipv6_ll_address_to_mac (struct in6_addr *address, u_char *mac) { - mac[0] = address->s6_addr[8]; - mac[0] &= ~0x02; + mac[0] = address->s6_addr[8] ^ 0x02; mac[1] = address->s6_addr[9]; mac[2] = address->s6_addr[10]; mac[3] = address->s6_addr[13];