From f937f71b76897203318977af033b76690ce24d72 Mon Sep 17 00:00:00 2001 From: Yannis Planus Date: Tue, 30 Jun 2020 09:01:14 +0200 Subject: [PATCH 1/1] Fix to join AllHost multicast group again when adding an existing IP address When calling SIOCAIFADDR ioctl with an existing IP address, this IP address was deleted and AllHost multicast group leaved. Then IP address was added again but AllHost multicast group was not joined. --- sys/netinet/in.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/netinet/in.c b/sys/netinet/in.c index fb44766fc61..40d3e2fe945 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -379,10 +379,11 @@ in_aifaddr_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp, struct thread *td) continue; it = (struct in_ifaddr *)ifa; - iaIsFirst = false; if (it->ia_addr.sin_addr.s_addr == addr->sin_addr.s_addr && prison_check_ip4(td->td_ucred, &addr->sin_addr) == 0) ia = it; + else + iaIsFirst = false; } NET_EPOCH_EXIT(et); -- 2.16.5