aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet6
diff options
context:
space:
mode:
authorAlexander V. Chernikov <melifaro@FreeBSD.org>2023-06-01 11:44:15 +0000
committerAlexander V. Chernikov <melifaro@FreeBSD.org>2023-06-01 11:44:19 +0000
commita77facd27368f618520d25391cfce11149879a41 (patch)
treefd4b495735313fa581d0ff503c76f4585686f567 /sys/netinet6
parent54b955f4df5e76b5679ba7f3eb6bb2d5fc62923d (diff)
downloadsrc-a77facd27368f618520d25391cfce11149879a41.tar.gz
src-a77facd27368f618520d25391cfce11149879a41.zip
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/in6.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c
index 3d967e9a40c7..0ef640c5c4bf 100644
--- a/sys/netinet6/in6.c
+++ b/sys/netinet6/in6.c
@@ -2049,6 +2049,20 @@ in6_if_up(struct ifnet *ifp)
in6_ifattach(ifp, NULL);
}
+static void
+in6_ifevent(void *arg __unused, struct ifnet *ifp, int event)
+{
+ if (event == IFNET_EVENT_UP)
+ in6_if_up(ifp);
+}
+
+static void
+in6_init(void *arg __unused)
+{
+ EVENTHANDLER_REGISTER(ifnet_event, in6_ifevent, NULL, EVENTHANDLER_PRI_ANY);
+}
+SYSINIT(in6_init, SI_SUB_PROTO_DOMAIN, SI_ORDER_THIRD, in6_init, NULL);
+
int
in6if_do_dad(struct ifnet *ifp)
{