mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
Fix a mbuf and refcnt leak in the broadcast code.
If the packet is rejected from pfil(9) then continue the loop rather than returning, this means that we can still try to send it out the remaining interfaces but more importantly the mbuf is freed and refcount decremented on exit.
This commit is contained in:
parent
d954c733ba
commit
bb4b5f54a5
1 changed files with 4 additions and 4 deletions
|
|
@ -1871,10 +1871,10 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet *src_if,
|
|||
|| inet6_pfil_hook.ph_busy_count >= 0
|
||||
#endif
|
||||
)) {
|
||||
if (bridge_pfil(&m, NULL, dst_if, PFIL_OUT) != 0)
|
||||
return;
|
||||
if (m == NULL)
|
||||
return;
|
||||
if (bridge_pfil(&mc, NULL, dst_if, PFIL_OUT) != 0)
|
||||
continue;
|
||||
if (mc == NULL)
|
||||
continue;
|
||||
}
|
||||
|
||||
bridge_enqueue(sc, dst_if, mc);
|
||||
|
|
|
|||
Loading…
Reference in a new issue