Neither the learn path nor the forward path excluded the link-local
224.0.0.0/24 block, which RFC 4541 §2.1.1 requires always be flooded and
never snooped. Under FreeBSD's own default (net.inet.igmp.sendlocal=1)
hosts do emit IGMP reports for groups in this range -- mDNS's
224.0.0.251, for instance -- so the bridge would learn state from one
reporting host and prune the group to that port alone, silently dropping it
for every other listener that had suppressed its own report under normal
IGMPv2 report suppression.
Fixed with two independent guards, one learn-side and one forward-side, so
MDB state carried over from a pre-fix kernel cannot prune control traffic
after an upgrade either.
Found by an edge-case suite in this series' companion repo, written after
the core ATF coverage was otherwise complete -- not by inspection or by
an ATF regression.
Depends on D58746