fix layer7 patches for Kernels >= 2.6.35, thanks Daniel Gimpelevich

SVN-Revision: 24728
This commit is contained in:
Jo-Philipp Wich 2010-12-19 16:46:47 +00:00
parent 7526fd8627
commit 4869f2c5e8
3 changed files with 96 additions and 18 deletions

View file

@ -11,15 +11,41 @@
match(const struct sk_buff *skbin, const struct xt_match_param *par) match(const struct sk_buff *skbin, const struct xt_match_param *par)
#else #else
match(const struct sk_buff *skbin, match(const struct sk_buff *skbin,
@@ -598,7 +600,11 @@ match(const struct sk_buff *skbin, @@ -597,14 +599,19 @@ match(const struct sk_buff *skbin,
}
// load nf_conntrack_ipv4 // 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) #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28)
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) -static bool check(const struct xt_mtchk_param *par)
+static int check(const struct xt_mtchk_param *par) +check(const struct xt_mtchk_param *par)
+# else
static bool check(const struct xt_mtchk_param *par)
+# endif
{ {
if (nf_ct_l3proto_try_module_get(par->match->family) < 0) { if (nf_ct_l3proto_try_module_get(par->match->family) < 0) {
printk(KERN_WARNING "can't load conntrack support for " 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
}

View file

@ -11,15 +11,41 @@
match(const struct sk_buff *skbin, const struct xt_match_param *par) match(const struct sk_buff *skbin, const struct xt_match_param *par)
#else #else
match(const struct sk_buff *skbin, match(const struct sk_buff *skbin,
@@ -598,7 +600,11 @@ match(const struct sk_buff *skbin, @@ -597,14 +599,19 @@ match(const struct sk_buff *skbin,
}
// load nf_conntrack_ipv4 // 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) #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28)
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) -static bool check(const struct xt_mtchk_param *par)
+static int check(const struct xt_mtchk_param *par) +check(const struct xt_mtchk_param *par)
+# else
static bool check(const struct xt_mtchk_param *par)
+# endif
{ {
if (nf_ct_l3proto_try_module_get(par->match->family) < 0) { if (nf_ct_l3proto_try_module_get(par->match->family) < 0) {
printk(KERN_WARNING "can't load conntrack support for " 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
}

View file

@ -11,15 +11,41 @@
match(const struct sk_buff *skbin, const struct xt_match_param *par) match(const struct sk_buff *skbin, const struct xt_match_param *par)
#else #else
match(const struct sk_buff *skbin, match(const struct sk_buff *skbin,
@@ -598,7 +600,11 @@ match(const struct sk_buff *skbin, @@ -597,14 +599,19 @@ match(const struct sk_buff *skbin,
}
// load nf_conntrack_ipv4 // 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) #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28)
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35) -static bool check(const struct xt_mtchk_param *par)
+static int check(const struct xt_mtchk_param *par) +check(const struct xt_mtchk_param *par)
+# else
static bool check(const struct xt_mtchk_param *par)
+# endif
{ {
if (nf_ct_l3proto_try_module_get(par->match->family) < 0) { if (nf_ct_l3proto_try_module_get(par->match->family) < 0) {
printk(KERN_WARNING "can't load conntrack support for " 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
}