From: Linus Lüssing <linus.luessing@xxxxxxxxx> Date: Tue, 7 Apr 2015 21:57:30 +0200 > With this patch, the IGMP and MLD message validation functions are moved > from the bridge code to the IPv4/IPv6 multicast files. Some small > refactoring was done to enhance readibility and to iron out some > differences in behaviour between the IGMP and MLD parsing code (e.g. the > skb-cloning of MLD messages is now only done if necessary, just like the > IGMP part always did). > > Finally, these IGMP and MLD message validation functions are exported so > that not only the bridge can use it but batman-adv later, too. First, you're missing a proper signoff for this patch. Second, this is going to run into the usual ugly case of how to deal with the exports when someone wants to build batman-adv statically into the kernel, yet keep ipv6 modular. This: + depends on !BATMAN_ADV_MCAST || IPV6 || IPV6=n Doesn't really cut it. How can a user who made IPV6 modular and BATMAN_ADV static figure out that he needs to abide by this convoluted rule just to enable multicasting properly? Look at the obj-y rules in net/ipv6/Makefile for a better way to handle this.