X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fodhcpd.git;a=blobdiff_plain;f=src%2Fndp.c;h=49aea1cb5e0479d2dbc7cecf9ee724a8cafbc5a1;hp=3b472de84942587a1cfe3fb8a9ccaf1f27ef8adc;hb=2b3355f14e2030ce5af46ec946af496fadbd31cb;hpb=6eb1e01b1a7cc5e73829bf2a050ba2cff57cbebd diff --git a/src/ndp.c b/src/ndp.c index 3b472de..49aea1c 100644 --- a/src/ndp.c +++ b/src/ndp.c @@ -362,8 +362,6 @@ static void check_addr_updates(struct interface *iface) qsort(addr, len, sizeof(*addr), prefixcmp); for (int i = 0; i < len; ++i) { - addr[i].addr.s6_addr32[3] = 0; - if (addr[i].preferred < UINT32_MAX - now) addr[i].preferred += now; @@ -405,14 +403,14 @@ static void setup_addr_for_relaying(struct in6_addr *addr, struct interface *ifa if (iface == c || (c->ndp != RELAYD_RELAY && !add)) continue; - add = (c->ndp == RELAYD_RELAY ? add : false); + bool neigh_add = (c->ndp == RELAYD_RELAY ? add : false); - if (odhcpd_setup_proxy_neigh(addr, c, add)) + if (odhcpd_setup_proxy_neigh(addr, c, neigh_add)) syslog(LOG_DEBUG, "Failed to %s proxy neighbour entry %s%%%s", - add ? "add" : "delete", ipbuf, iface->ifname); + neigh_add ? "add" : "delete", ipbuf, c->ifname); else syslog(LOG_DEBUG, "%s proxy neighbour entry %s%%%s", - add ? "Added" : "Deleted", ipbuf, iface->ifname); + neigh_add ? "Added" : "Deleted", ipbuf, c->ifname); } }