X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=src%2Fra.c;h=baaee9bcb6c410d21edf2368a7aeda9989f209f5;hb=3e52a1448eee0fbf7ff67c123265bedcbc9c26d0;hp=b700c9a8270a10aba5a162f10d0c4c061e785e27;hpb=67b311ab81736b35858664219d345844ab08fcc7;p=odhcp6c.git diff --git a/src/ra.c b/src/ra.c index b700c9a..baaee9b 100644 --- a/src/ra.c +++ b/src/ra.c @@ -146,7 +146,7 @@ static void ra_send_rs(int signal __attribute__((unused))) struct ifreq ifr; memset(&ifr, 0, sizeof(ifr)); strncpy(ifr.ifr_name, if_name, sizeof(ifr.ifr_name)); - if (!ioctl(sock, SIOCGIFHWADDR, &ifr) + if ((rs_attempt % 2 == 0) && !ioctl(sock, SIOCGIFHWADDR, &ifr) && memcmp(rs.lladdr.data, ifr.ifr_hwaddr.sa_data, 6)) memcpy(rs.lladdr.data, ifr.ifr_hwaddr.sa_data, 6); else