diff options
-rw-r--r-- | sys/net/if.c | 3 | ||||
-rw-r--r-- | sys/netinet/in.c | 3 | ||||
-rw-r--r-- | sys/netinet6/in6_ifattach.c | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/sys/net/if.c b/sys/net/if.c index f73f8d2698c..3169e06ab61 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if.c,v 1.291 2014/06/23 18:51:15 henning Exp $ */ +/* $OpenBSD: if.c,v 1.292 2014/06/26 13:08:25 mpi Exp $ */ /* $NetBSD: if.c,v 1.35 1996/05/07 05:26:04 thorpej Exp $ */ /* @@ -2361,6 +2361,7 @@ ifnewlladdr(struct ifnet *ifp) ifa = &in6ifa_ifpforlinklocal(ifp, 0)->ia_ifa; if (ifa) { in6_purgeaddr(ifa); + dohooks(ifp->if_addrhooks, 0); in6_ifattach_linklocal(ifp, NULL); if (in6if_do_dad(ifp)) { ifa = &in6ifa_ifpforlinklocal(ifp, 0)->ia_ifa; diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 74403a8adfc..425b408c376 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -1,4 +1,4 @@ -/* $OpenBSD: in.c,v 1.98 2014/06/16 19:47:21 mpi Exp $ */ +/* $OpenBSD: in.c,v 1.99 2014/06/26 13:08:25 mpi Exp $ */ /* $NetBSD: in.c,v 1.26 1996/02/13 23:41:39 christos Exp $ */ /* @@ -1079,5 +1079,6 @@ in_ifdetach(struct ifnet *ifp) if (ifa->ifa_addr->sa_family != AF_INET) continue; in_purgeaddr(ifa); + dohooks(ifp->if_addrhooks, 0); } } diff --git a/sys/netinet6/in6_ifattach.c b/sys/netinet6/in6_ifattach.c index fe3e0a3f467..37059e1c21c 100644 --- a/sys/netinet6/in6_ifattach.c +++ b/sys/netinet6/in6_ifattach.c @@ -1,4 +1,4 @@ -/* $OpenBSD: in6_ifattach.c,v 1.70 2014/06/03 13:32:24 mpi Exp $ */ +/* $OpenBSD: in6_ifattach.c,v 1.71 2014/06/26 13:08:25 mpi Exp $ */ /* $KAME: in6_ifattach.c,v 1.124 2001/07/18 08:32:51 jinmei Exp $ */ /* @@ -648,6 +648,7 @@ in6_ifdetach(struct ifnet *ifp) if (ifa->ifa_addr->sa_family != AF_INET6) continue; in6_purgeaddr(ifa); + dohooks(ifp->if_addrhooks, 0); } /* |