--- a/net/netfilter/xt_layer7.c +++ b/net/netfilter/xt_layer7.c @@ -415,7 +415,9 @@ static int layer7_write_proc(struct file } static bool -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) +match(const struct sk_buff *skbin, struct xt_action_param *par) +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28) match(const struct sk_buff *skbin, const struct xt_match_param *par) #else match(const struct sk_buff *skbin, @@ -597,14 +599,19 @@ match(const struct sk_buff *skbin, } // load nf_conntrack_ipv4 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) +static int +#else +static bool +#endif #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28) -static bool check(const struct xt_mtchk_param *par) +check(const struct xt_mtchk_param *par) { if (nf_ct_l3proto_try_module_get(par->match->family) < 0) { printk(KERN_WARNING "can't load conntrack support for " "proto=%d\n", par->match->family); #else -static bool check(const char *tablename, const void *inf, +check(const char *tablename, const void *inf, const struct xt_match *match, void *matchinfo, unsigned int hook_mask) { @@ -612,9 +619,15 @@ static bool check(const char *tablename, printk(KERN_WARNING "can't load conntrack support for " "proto=%d\n", match->family); #endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) + return -EINVAL; + } + return 0; +#else return 0; } return 1; +#endif }