diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index 4adc54591338..c2e6d66798e6 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -1795,6 +1795,8 @@ nd6_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp) LIST_FOREACH_SAFE(pr, &V_nd_prefix, ndpr_entry, next) { if (IN6_IS_ADDR_LINKLOCAL(&pr->ndpr_prefix.sin6_addr)) continue; /* XXX */ + if (LIST_EMPTY(&pr->ndpr_advrtrs)) + continue; nd6_prefix_unlink(pr, &prl); } ND6_WUNLOCK();