Hi,
The following are two patches for the Linux bridge regarding multicast routers. They are rebased on top of the following fix: "net: bridge: mcast: fix broken length + header check for MRDv6 Adv." [0] And should be applied afterwards.
The first one splits the so far combined multicast router state into two ones, one for IPv4 and one for IPv6, for a more fine-grained detection of multicast routers. This avoids sending IPv4 multicast packets to an IPv6-only multicast router and avoids sending IPv6 multicast packets to an IPv4-only multicast router. This is also in preparation for the second patch:
The second patch exports this now per protocol family multicast router state so that batman-adv can then later make full use of the Multicast Router Discovery (MRD) support in the Linux bridge. The batman-adv protocol format currently expects separate multicast router states for IPv4 and IPv6, therefore it depends on the first patch. batman-adv will then make use of this newly exported functions like this[1].
Regards, Linus
[0]: https://patchwork.kernel.org/project/netdevbpf/patch/20210425152736.8421-1-l... [1]: https://git.open-mesh.org/batman-adv.git/shortlog/refs/heads/linus/multicast... -> https://git.open-mesh.org/batman-adv.git/commit/d4bed3a92427445708baeb1f2d18...