fix layer7 patches for Kernels >= 2.6.35, thanks Daniel Gimpelevich
SVN-Revision: 24728
This commit is contained in:
parent
7526fd8627
commit
4869f2c5e8
3 changed files with 96 additions and 18 deletions
|
@ -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
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue