Hi lads, I had some problems compiling the external netfilter modules due to missing definitions. I googled a lot, saw a lot of people having the same problems but no real answer to how to fix it.
So.. I made a little patch which make things work for me, at least. Modules that work after applying the patch are the geopip module, connlimit module, and prolly more, but I didnt test them. Please note, I am not a coder, not a maintainer and I am happy that I didnt break anything so please don't consider this as a proposal to include in the kernel or something, I am just in favor of sharing what helped me getting things to work, if i can help others with it or if it is interesting material for inclusion, even better :) So, the patch is attached in this email and can also be found on http://www.patrickale.eu/documents/archives/patches/ip_tables.h.diff I hope this helps a people or two. Patrick
--- include/linux/netfilter_ipv4/ip_tables.h.orig 2007-04-07 20:30:25.344365707 +0200 +++ include/linux/netfilter_ipv4/ip_tables.h 2007-04-07 20:34:05.076887550 +0200 @@ -34,6 +34,12 @@ #define ipt_table xt_table #define ipt_get_revision xt_get_revision +#define ipt_register_match(mtch) \ +({ (mtch)->family = AF_INET; \ + xt_register_match(mtch); }) +#define ipt_unregister_match(mtch) xt_unregister_match(mtch) + + /* Yes, Virginia, you have to zero the padding. */ struct ipt_ip { /* Source and destination IP addr */