diff options
author | mlaier <mlaier@FreeBSD.org> | 2009-04-10 14:41:51 +0000 |
---|---|---|
committer | mlaier <mlaier@FreeBSD.org> | 2009-04-10 14:41:51 +0000 |
commit | 6472cfe37a23e071f0ab1eb2589bc459df57108d (patch) | |
tree | bc02de7368709b860a02793b1546793283c6234f | |
parent | 62feb9bfc2d5684723ac955acd1a03641e93fd25 (diff) | |
download | FreeBSD-src-6472cfe37a23e071f0ab1eb2589bc459df57108d.zip FreeBSD-src-6472cfe37a23e071f0ab1eb2589bc459df57108d.tar.gz |
Remove interfaces from IFG_ALL on detach. This cures a couple of pf panics
when using the "self" keyword in tables or as ()-style host address and
fixes "ifconfig -g all" output.
PR: kern/130977, kern/131310
Submitted by: Mikolaj Golub
MFC after: 3 days
-rw-r--r-- | sys/net/if.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/net/if.c b/sys/net/if.c index 20627d3..d0cbec5 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -887,6 +887,7 @@ if_detach(struct ifnet *ifp) rt_ifannouncemsg(ifp, IFAN_DEPARTURE); EVENTHANDLER_INVOKE(ifnet_departure_event, ifp); devctl_notify("IFNET", ifp->if_xname, "DETACH", NULL); + if_delgroup(ifp, IFG_ALL); IF_AFDATA_LOCK(ifp); for (dp = domains; dp; dp = dp->dom_next) { |