summaryrefslogtreecommitdiff
path: root/sys/netinet6/in6_ifattach.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet6/in6_ifattach.c')
-rw-r--r--sys/netinet6/in6_ifattach.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/netinet6/in6_ifattach.c b/sys/netinet6/in6_ifattach.c
index 93620c48377..7f812902a6b 100644
--- a/sys/netinet6/in6_ifattach.c
+++ b/sys/netinet6/in6_ifattach.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: in6_ifattach.c,v 1.72 2014/07/01 19:37:07 benno Exp $ */
+/* $OpenBSD: in6_ifattach.c,v 1.73 2014/08/25 14:00:34 florian Exp $ */
/* $KAME: in6_ifattach.c,v 1.124 2001/07/18 08:32:51 jinmei Exp $ */
/*
@@ -689,4 +689,13 @@ in6_ifdetach(struct ifnet *ifp)
ifp->if_rdomain);
rtfree(rt);
}
+
+ if (ifp->if_xflags & IFXF_AUTOCONF6) {
+ nd6_rs_timeout_count--;
+ if (nd6_rs_timeout_count == 0)
+ timeout_del(&nd6_rs_output_timer);
+ if (RS_LHCOOKIE(ifp) != NULL)
+ hook_disestablish(ifp->if_linkstatehooks,
+ RS_LHCOOKIE(ifp));
+ }
}