diff options
author | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2020-10-18 12:03:36 +0000 |
---|---|---|
committer | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2020-10-18 12:03:36 +0000 |
commit | fa8b3fcb4cbb145eebef6b05ccf96c737a1193f8 (patch) | |
tree | 7c5ad5733362f0e728c0111c0d7d69a5d444ba27 | |
parent | 22ab212ff8e9c0cd6044cf61b02ea78aa0f52aa7 (diff) | |
download | src-fa8b3fcb4cbb145eebef6b05ccf96c737a1193f8.tar.gz src-fa8b3fcb4cbb145eebef6b05ccf96c737a1193f8.zip |
Notes
-rw-r--r-- | sys/netinet/in_mcast.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/netinet/in_mcast.c b/sys/netinet/in_mcast.c index f1b9f005ff2c..6d390a0b263c 100644 --- a/sys/netinet/in_mcast.c +++ b/sys/netinet/in_mcast.c @@ -2009,6 +2009,7 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) else ifp = inp_lookup_mcast_ifp(inp, &gsa->sin, mreqn.imr_address); + NET_EPOCH_EXIT(et); break; } case IP_ADD_SOURCE_MEMBERSHIP: { @@ -2032,6 +2033,7 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) NET_EPOCH_ENTER(et); ifp = inp_lookup_mcast_ifp(inp, &gsa->sin, mreqs.imr_interface); + NET_EPOCH_EXIT(et); CTR3(KTR_IGMPV3, "%s: imr_interface = 0x%08x, ifp = %p", __func__, ntohl(mreqs.imr_interface.s_addr), ifp); break; @@ -2074,6 +2076,7 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) return (EADDRNOTAVAIL); NET_EPOCH_ENTER(et); ifp = ifnet_byindex_ref(gsr.gsr_interface); + NET_EPOCH_EXIT(et); break; default: @@ -2082,7 +2085,6 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) return (EOPNOTSUPP); break; } - NET_EPOCH_EXIT(et); if (ifp == NULL || (ifp->if_flags & IFF_MULTICAST) == 0) { if (ifp != NULL) |