X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fodhcpd.git;a=blobdiff_plain;f=src%2Frouter.c;h=a45a8cbbe2d176ed4ed71a587f9107cdebfb8154;hp=f8ba5d7aac0332daa0c8776e12183c4c06e48edd;hb=e59238f32a47616091d8c78acb317d7b4023745f;hpb=1bbf34a1df3e16865b3b9330b338952076bc26f9 diff --git a/src/router.c b/src/router.c index f8ba5d7..a45a8cb 100644 --- a/src/router.c +++ b/src/router.c @@ -410,7 +410,8 @@ static void send_router_advert(struct uloop_timeout *event) for (ssize_t i = 0; i < ipcnt; ++i) { struct odhcpd_ipaddr *addr = &addrs[i]; - if (addr->dprefix > 64 || addr->dprefix == 0) { + if (addr->dprefix > 64 || addr->dprefix == 0 || + (addr->dprefix == 64 && addr->prefix == 64)) { continue; // Address not suitable } else if (addr->dprefix > 32) { addr->addr.s6_addr32[1] &= htonl(~((1U << (64 - addr->dprefix)) - 1));