In rip6_input(), in case of multicast, we might skip the normal processing
and go to the next iteration early if multicast filtering would decide that this socket shall not receive the data. Unlock the pcb in that case or we leak the read lock and next time trying to get a write lock, would hang forever. PR: kern/149608 Submitted by: Chris Luke (chrisy flirble.org) MFC after: 3 days
This commit is contained in:
parent
7ec4e6b83b
commit
8c09aa57d9
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=211301
@ -248,6 +248,7 @@ rip6_input(struct mbuf **mp, int *offp, int proto)
|
||||
}
|
||||
if (blocked != MCAST_PASS) {
|
||||
IP6STAT_INC(ip6s_notmember);
|
||||
INP_RUNLOCK(in6p);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user