On Wed, Jun 06, 2018 at 01:16:43PM +0200, Jan Engelhardt wrote: > > On Wednesday 2018-06-06 09:45, Duncan Roe wrote: > > > >ebtables would not build on my system and I submitted a patch to fix that which > >was accepted as commit 66a97018a31eed416c6a25d051ea172e4d65be1b. > > Well then let's start there. > > "" The cause of this failure is that the commit updated include/ebtables.h but > libebtc.c uses include/linux/netfilter_bridge/ebtables.h via > include/ebtables_u.h (gcc -E -C verifies this). "" > > You missed that include/ebtables.h was *totally unused*. Not so. I did find it rather perplexing that it was not being used, especially as it had been recently updated: 00:22:59$ git log -- include/ebtables.h commit b1cdae87f25021eb835872d86d6e7206bd421c3f Author: Bernie Harris <bernie.harris@xxxxxxxxxxxxxxxxxxx> Date: Wed Mar 21 15:42:29 2018 +1300 extensions: Add string filter to ebtables This patch is part of a proposal to add a string filter to ebtables, which would be similar to the string filter in iptables. Like iptables, the ebtables filter uses the xt_string module, however some modifications have been made for this to work correctly. Currently ebtables assumes that the revision number of all match modules is 0. The xt_string module doesn't register a match with revision 0 so the solution is to modify ebtables to allow extensions to specify a revision number, similar to iptables. This gets passed down to the kernel, which is then able to find the match module correctly. Signed-off-by: Bernie Harris <bernie.harris@xxxxxxxxxxxxxxxxxxx> Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> [... (2006, 2003,...)] > > To receive the new "revision" field, > include/linux/netfilter_bridge/ebtables.h should have been updated > instead. This is what the compilation has been using all along > up to and including 9fff3d5. You could have a point there. But seeing that include/ebtables.h was updated, I assumed Bernie had intended it to be used. It seems the private header copies came in just over 3 years ago: 01:18:49$ git log -- include/linux/netfilter_bridge/ebtables.h commit f4bdc80ae8c1a79b4ab5dcb8431ad85aea618d66 Author: Pedro Alvarez <pedro.alvarez@xxxxxxxxxxxxxxx> Date: Fri Feb 27 11:54:10 2015 +0000 Add kernel headers needed from v3.16 Ebtables fails to compile with versions of the linux headers greater than v3.16 with this error: extensions/ebt_ulog.c:17:45: fatal error: linux/netfilter_bridge/ebt_ulog.h: No such file or directory #include <linux/netfilter_bridge/ebt_ulog.h> This patch adds netfilter_bridge headers for every supported extension, including filter.h and types.h, to avoid this problem and future problems with changes in the kernel headers. Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> Had that been my patch, it would have included a switch to double-quotes. Cheers ... Duncan. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html