mirror of
git://git.code.sf.net/p/xtables-addons/xtables-addons
synced 2025-09-06 20:55:13 +02:00
compat_xtables: move to 2.6.35 xt_action_param (1/3)
This commit is contained in:
@@ -478,7 +478,7 @@ static void ipt_acc_depth2_insert(struct ipt_acc_mask_8 *mask_8,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int ipt_acc_target(struct sk_buff **pskb, const struct xt_target_param *par)
|
static unsigned int ipt_acc_target(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct ipt_acc_info *info =
|
const struct ipt_acc_info *info =
|
||||||
par->targinfo;
|
par->targinfo;
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* API compat layer
|
* API compat layer
|
||||||
* written by Jan Engelhardt <jengelh [at] medozas de>, 2008
|
* written by Jan Engelhardt <jengelh [at] medozas de>, 2008 - 2010
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License, either
|
* modify it under the terms of the GNU General Public License, either
|
||||||
@@ -35,16 +35,15 @@ static bool xtnu_match_run(const struct sk_buff *skb,
|
|||||||
{
|
{
|
||||||
struct xtnu_match *nm = xtcompat_numatch(cm);
|
struct xtnu_match *nm = xtcompat_numatch(cm);
|
||||||
bool lo_drop = false, lo_ret;
|
bool lo_drop = false, lo_ret;
|
||||||
struct xt_match_param local_par = {
|
struct xt_action_param local_par;
|
||||||
.in = in,
|
local_par.in = in;
|
||||||
.out = out,
|
local_par.out = out;
|
||||||
.match = cm,
|
local_par.match = cm;
|
||||||
.matchinfo = matchinfo,
|
local_par.matchinfo = matchinfo;
|
||||||
.fragoff = offset,
|
local_par.fragoff = offset;
|
||||||
.thoff = protoff,
|
local_par.thoff = protoff;
|
||||||
.hotdrop = &lo_drop,
|
local_par.hotdrop = &lo_drop;
|
||||||
.family = NFPROTO_UNSPEC, /* don't have that info */
|
local_par.family = NFPROTO_UNSPEC; /* don't have that info */
|
||||||
};
|
|
||||||
|
|
||||||
if (nm == NULL || nm->match == NULL)
|
if (nm == NULL || nm->match == NULL)
|
||||||
return false;
|
return false;
|
||||||
@@ -53,6 +52,28 @@ static bool xtnu_match_run(const struct sk_buff *skb,
|
|||||||
return lo_ret;
|
return lo_ret;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 28) && \
|
||||||
|
LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 34)
|
||||||
|
static bool xtnu_match_run(const struct sk_buff *skb,
|
||||||
|
const struct xt_match_param *par)
|
||||||
|
{
|
||||||
|
struct xtnu_match *nm = xtcompat_numatch(par->match);
|
||||||
|
struct xt_action_param local_par;
|
||||||
|
|
||||||
|
local_par.in = par->in;
|
||||||
|
local_par.out = par->out;
|
||||||
|
local_par.match = par->match;
|
||||||
|
local_par.matchinfo = par->matchinfo;
|
||||||
|
local_par.fragoff = par->fragoff;
|
||||||
|
local_par.thoff = par->thoff;
|
||||||
|
local_par.hotdrop = par->hotdrop;
|
||||||
|
local_par.family = par->family;
|
||||||
|
|
||||||
|
if (nm == NULL || nm->match == NULL)
|
||||||
|
return false;
|
||||||
|
return nm->match(skb, &local_par);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 18)
|
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 18)
|
||||||
static int xtnu_match_check(const char *table, const void *entry,
|
static int xtnu_match_check(const char *table, const void *entry,
|
||||||
@@ -144,6 +165,10 @@ int xtnu_register_match(struct xtnu_match *nt)
|
|||||||
ct->match = xtnu_match_run;
|
ct->match = xtnu_match_run;
|
||||||
ct->checkentry = xtnu_match_check;
|
ct->checkentry = xtnu_match_check;
|
||||||
ct->destroy = xtnu_match_destroy;
|
ct->destroy = xtnu_match_destroy;
|
||||||
|
#elif LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 34)
|
||||||
|
ct->match = xtnu_match_run;
|
||||||
|
ct->checkentry = xtnu_match_check;
|
||||||
|
ct->destroy = nt->destroy;
|
||||||
#else
|
#else
|
||||||
ct->match = nt->match;
|
ct->match = nt->match;
|
||||||
ct->checkentry = xtnu_match_check;
|
ct->checkentry = xtnu_match_check;
|
||||||
@@ -211,14 +236,14 @@ static unsigned int xtnu_target_run(struct sk_buff *skb,
|
|||||||
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 27)
|
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 27)
|
||||||
{
|
{
|
||||||
struct xtnu_target *nt = xtcompat_nutarget(ct);
|
struct xtnu_target *nt = xtcompat_nutarget(ct);
|
||||||
struct xt_target_param local_par = {
|
struct xt_action_param local_par;
|
||||||
.in = in,
|
|
||||||
.out = out,
|
local_par.in = in;
|
||||||
.hooknum = hooknum,
|
local_par.out = out;
|
||||||
.target = ct,
|
local_par.hooknum = hooknum;
|
||||||
.targinfo = targinfo,
|
local_par.target = ct;
|
||||||
.family = NFPROTO_UNSPEC,
|
local_par.targinfo = targinfo;
|
||||||
};
|
local_par.family = NFPROTO_UNSPEC;
|
||||||
|
|
||||||
if (nt != NULL && nt->target != NULL)
|
if (nt != NULL && nt->target != NULL)
|
||||||
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 23)
|
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 23)
|
||||||
@@ -235,7 +260,16 @@ static unsigned int
|
|||||||
xtnu_target_run(struct sk_buff *skb, const struct xt_target_param *par)
|
xtnu_target_run(struct sk_buff *skb, const struct xt_target_param *par)
|
||||||
{
|
{
|
||||||
struct xtnu_target *nt = xtcompat_nutarget(par->target);
|
struct xtnu_target *nt = xtcompat_nutarget(par->target);
|
||||||
return nt->target(&skb, par);
|
struct xt_action_param local_par;
|
||||||
|
|
||||||
|
local_par.in = par->in;
|
||||||
|
local_par.out = par->out;
|
||||||
|
local_par.hooknum = par->hooknum;
|
||||||
|
local_par.target = par->target;
|
||||||
|
local_par.targinfo = par->targinfo;
|
||||||
|
local_par.family = par->family;
|
||||||
|
|
||||||
|
return nt->target(&skb, &local_par);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -32,16 +32,6 @@ enum {
|
|||||||
NFPROTO_NUMPROTO,
|
NFPROTO_NUMPROTO,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct xt_match_param {
|
|
||||||
const struct net_device *in, *out;
|
|
||||||
const struct xt_match *match;
|
|
||||||
const void *matchinfo;
|
|
||||||
int fragoff;
|
|
||||||
unsigned int thoff;
|
|
||||||
bool *hotdrop;
|
|
||||||
u_int8_t family;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct xt_mtchk_param {
|
struct xt_mtchk_param {
|
||||||
const char *table;
|
const char *table;
|
||||||
const void *entryinfo;
|
const void *entryinfo;
|
||||||
@@ -81,6 +71,23 @@ struct xt_tgdtor_param {
|
|||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 34)
|
||||||
|
struct xt_action_param {
|
||||||
|
union {
|
||||||
|
const struct xt_match *match;
|
||||||
|
const struct xt_target *target;
|
||||||
|
};
|
||||||
|
union {
|
||||||
|
const void *matchinfo, *targinfo;
|
||||||
|
};
|
||||||
|
const struct net_device *in, *out;
|
||||||
|
int fragoff;
|
||||||
|
unsigned int thoff, hooknum;
|
||||||
|
u_int8_t family;
|
||||||
|
bool *hotdrop;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
struct xtnu_match {
|
struct xtnu_match {
|
||||||
/*
|
/*
|
||||||
* Making it smaller by sizeof(void *) on purpose to catch
|
* Making it smaller by sizeof(void *) on purpose to catch
|
||||||
@@ -88,7 +95,7 @@ struct xtnu_match {
|
|||||||
*/
|
*/
|
||||||
char name[sizeof(((struct xt_match *)NULL)->name) - 1 - sizeof(void *)];
|
char name[sizeof(((struct xt_match *)NULL)->name) - 1 - sizeof(void *)];
|
||||||
uint8_t revision;
|
uint8_t revision;
|
||||||
bool (*match)(const struct sk_buff *, const struct xt_match_param *);
|
bool (*match)(const struct sk_buff *, const struct xt_action_param *);
|
||||||
int (*checkentry)(const struct xt_mtchk_param *);
|
int (*checkentry)(const struct xt_mtchk_param *);
|
||||||
void (*destroy)(const struct xt_mtdtor_param *);
|
void (*destroy)(const struct xt_mtdtor_param *);
|
||||||
struct module *me;
|
struct module *me;
|
||||||
@@ -103,7 +110,7 @@ struct xtnu_target {
|
|||||||
char name[sizeof(((struct xt_target *)NULL)->name) - 1 - sizeof(void *)];
|
char name[sizeof(((struct xt_target *)NULL)->name) - 1 - sizeof(void *)];
|
||||||
uint8_t revision;
|
uint8_t revision;
|
||||||
unsigned int (*target)(struct sk_buff **,
|
unsigned int (*target)(struct sk_buff **,
|
||||||
const struct xt_target_param *);
|
const struct xt_action_param *);
|
||||||
int (*checkentry)(const struct xt_tgchk_param *);
|
int (*checkentry)(const struct xt_tgchk_param *);
|
||||||
void (*destroy)(const struct xt_tgdtor_param *);
|
void (*destroy)(const struct xt_tgdtor_param *);
|
||||||
struct module *me;
|
struct module *me;
|
||||||
|
@@ -29,7 +29,7 @@
|
|||||||
#include "../compat_xtables.h"
|
#include "../compat_xtables.h"
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
target(struct sk_buff **pskb, const struct xt_target_param *par)
|
target(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct ipt_set_info_target *info = par->targinfo;
|
const struct ipt_set_info_target *info = par->targinfo;
|
||||||
|
|
||||||
|
@@ -38,7 +38,7 @@ match_set(const struct ipt_set_info *info,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
match(const struct sk_buff *skb, const struct xt_match_param *par)
|
match(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct ipt_set_info_match *info = par->matchinfo;
|
const struct ipt_set_info_match *info = par->matchinfo;
|
||||||
|
|
||||||
|
@@ -958,7 +958,7 @@ is_close_knock(const struct peer *peer, const struct xt_pknock_mtinfo *info,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool pknock_mt(const struct sk_buff *skb,
|
static bool pknock_mt(const struct sk_buff *skb,
|
||||||
const struct xt_match_param *par)
|
const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_pknock_mtinfo *info = par->matchinfo;
|
const struct xt_pknock_mtinfo *info = par->matchinfo;
|
||||||
struct xt_pknock_rule *rule;
|
struct xt_pknock_rule *rule;
|
||||||
|
@@ -45,7 +45,7 @@ static const struct xt_tcp tcp_params = {
|
|||||||
|
|
||||||
/* CHAOS functions */
|
/* CHAOS functions */
|
||||||
static void
|
static void
|
||||||
xt_chaos_total(struct sk_buff *skb, const struct xt_target_param *par)
|
xt_chaos_total(struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_chaos_tginfo *info = par->targinfo;
|
const struct xt_chaos_tginfo *info = par->targinfo;
|
||||||
const struct iphdr *iph = ip_hdr(skb);
|
const struct iphdr *iph = ip_hdr(skb);
|
||||||
@@ -88,15 +88,21 @@ xt_chaos_total(struct sk_buff *skb, const struct xt_target_param *par)
|
|||||||
destiny->target(skb, par->in, par->out, par->hooknum, destiny, NULL);
|
destiny->target(skb, par->in, par->out, par->hooknum, destiny, NULL);
|
||||||
#else
|
#else
|
||||||
{
|
{
|
||||||
struct xt_target_param local_par = *par;
|
struct xt_target_param local_par = {
|
||||||
local_par.target = destiny;
|
.in = par->in,
|
||||||
|
.out = par->out,
|
||||||
|
.hooknum = par->hooknum,
|
||||||
|
.target = destiny,
|
||||||
|
.targinfo = par->targinfo,
|
||||||
|
.family = par->family,
|
||||||
|
};
|
||||||
destiny->target(skb, &local_par);
|
destiny->target(skb, &local_par);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
chaos_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
chaos_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Equivalent to:
|
* Equivalent to:
|
||||||
|
@@ -143,7 +143,7 @@ static void delude_send_reset(struct sk_buff *oldskb, unsigned int hook)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
delude_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
delude_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
/* WARNING: This code causes reentry within iptables.
|
/* WARNING: This code causes reentry within iptables.
|
||||||
This means that the iptables jump stack is now crap. We
|
This means that the iptables jump stack is now crap. We
|
||||||
|
@@ -69,7 +69,7 @@ static bool ether_cmp(const unsigned char *lh, const unsigned char *rh,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
dhcpmac_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
dhcpmac_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct dhcpmac_info *info = par->matchinfo;
|
const struct dhcpmac_info *info = par->matchinfo;
|
||||||
const struct dhcp_message *dh;
|
const struct dhcp_message *dh;
|
||||||
@@ -89,7 +89,7 @@ dhcpmac_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
dhcpmac_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
dhcpmac_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct dhcpmac_info *info = par->targinfo;
|
const struct dhcpmac_info *info = par->targinfo;
|
||||||
struct dhcp_message dhcpbuf, *dh;
|
struct dhcp_message dhcpbuf, *dh;
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
#include "compat_xtables.h"
|
#include "compat_xtables.h"
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
echo_tg4(struct sk_buff **poldskb, const struct xt_target_param *par)
|
echo_tg4(struct sk_buff **poldskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct sk_buff *oldskb = *poldskb;
|
const struct sk_buff *oldskb = *poldskb;
|
||||||
const struct udphdr *oldudp;
|
const struct udphdr *oldudp;
|
||||||
|
@@ -25,7 +25,7 @@ MODULE_ALIAS("ipt_IPMARK");
|
|||||||
MODULE_ALIAS("ip6t_IPMARK");
|
MODULE_ALIAS("ip6t_IPMARK");
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
ipmark_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
ipmark_tg4(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_ipmark_tginfo *ipmarkinfo = par->targinfo;
|
const struct xt_ipmark_tginfo *ipmarkinfo = par->targinfo;
|
||||||
const struct sk_buff *skb = *pskb;
|
const struct sk_buff *skb = *pskb;
|
||||||
@@ -61,7 +61,7 @@ static __u32 ipmark_from_ip6(const struct in6_addr *a, unsigned int s)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
ipmark_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
ipmark_tg6(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_ipmark_tginfo *info = par->targinfo;
|
const struct xt_ipmark_tginfo *info = par->targinfo;
|
||||||
const struct sk_buff *skb = *pskb;
|
const struct sk_buff *skb = *pskb;
|
||||||
|
@@ -30,7 +30,7 @@ static const char *const dir_names[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
logmark_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
logmark_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct sk_buff *skb = *pskb;
|
const struct sk_buff *skb = *pskb;
|
||||||
const struct xt_logmark_tginfo *info = par->targinfo;
|
const struct xt_logmark_tginfo *info = par->targinfo;
|
||||||
|
@@ -125,7 +125,7 @@ static unsigned int rawnat4_writable_part(const struct iphdr *iph)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
rawsnat_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
rawsnat_tg4(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_rawnat_tginfo *info = par->targinfo;
|
const struct xt_rawnat_tginfo *info = par->targinfo;
|
||||||
struct iphdr *iph;
|
struct iphdr *iph;
|
||||||
@@ -147,7 +147,7 @@ rawsnat_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
rawdnat_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
rawdnat_tg4(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_rawnat_tginfo *info = par->targinfo;
|
const struct xt_rawnat_tginfo *info = par->targinfo;
|
||||||
struct iphdr *iph;
|
struct iphdr *iph;
|
||||||
@@ -241,7 +241,7 @@ static void rawnat6_update_l4(struct sk_buff *skb, unsigned int l4proto,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
rawsnat_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
rawsnat_tg6(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_rawnat_tginfo *info = par->targinfo;
|
const struct xt_rawnat_tginfo *info = par->targinfo;
|
||||||
unsigned int l4offset, l4proto;
|
unsigned int l4offset, l4proto;
|
||||||
@@ -262,7 +262,7 @@ rawsnat_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
rawdnat_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
rawdnat_tg6(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_rawnat_tginfo *info = par->targinfo;
|
const struct xt_rawnat_tginfo *info = par->targinfo;
|
||||||
unsigned int l4offset, l4proto;
|
unsigned int l4offset, l4proto;
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
#include "compat_xtables.h"
|
#include "compat_xtables.h"
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
steal_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
steal_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
kfree_skb(*pskb);
|
kfree_skb(*pskb);
|
||||||
return NF_STOLEN;
|
return NF_STOLEN;
|
||||||
|
@@ -197,7 +197,7 @@ static unsigned int sysrq_tg(const void *pdata, uint16_t len)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
sysrq_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
sysrq_tg4(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
struct sk_buff *skb = *pskb;
|
struct sk_buff *skb = *pskb;
|
||||||
const struct iphdr *iph;
|
const struct iphdr *iph;
|
||||||
@@ -224,7 +224,7 @@ sysrq_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
|||||||
|
|
||||||
#ifdef WITH_IPV6
|
#ifdef WITH_IPV6
|
||||||
static unsigned int
|
static unsigned int
|
||||||
sysrq_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
sysrq_tg6(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
struct sk_buff *skb = *pskb;
|
struct sk_buff *skb = *pskb;
|
||||||
const struct ipv6hdr *iph;
|
const struct ipv6hdr *iph;
|
||||||
|
@@ -188,7 +188,7 @@ static void tarpit_tcp(struct sk_buff *oldskb, unsigned int hook)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
tarpit_tg(struct sk_buff **pskb, const struct xt_target_param *par)
|
tarpit_tg(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct sk_buff *skb = *pskb;
|
const struct sk_buff *skb = *pskb;
|
||||||
const struct iphdr *iph = ip_hdr(skb);
|
const struct iphdr *iph = ip_hdr(skb);
|
||||||
|
@@ -103,7 +103,7 @@ static void tee_tg_send(struct sk_buff *skb)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
tee_tg4(struct sk_buff **pskb, const struct xt_target_param *par)
|
tee_tg4(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_tee_tginfo *info = par->targinfo;
|
const struct xt_tee_tginfo *info = par->targinfo;
|
||||||
struct sk_buff *skb = *pskb;
|
struct sk_buff *skb = *pskb;
|
||||||
@@ -205,7 +205,7 @@ tee_tg_route6(struct sk_buff *skb, const struct xt_tee_tginfo *info)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int
|
static unsigned int
|
||||||
tee_tg6(struct sk_buff **pskb, const struct xt_target_param *par)
|
tee_tg6(struct sk_buff **pskb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_tee_tginfo *info = par->targinfo;
|
const struct xt_tee_tginfo *info = par->targinfo;
|
||||||
struct sk_buff *skb = *pskb;
|
struct sk_buff *skb = *pskb;
|
||||||
|
@@ -96,7 +96,7 @@ static int condition_proc_write(struct file *file, const char __user *buffer,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
condition_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
condition_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_condition_mtinfo *info = par->matchinfo;
|
const struct xt_condition_mtinfo *info = par->matchinfo;
|
||||||
const struct condition_variable *var = info->condvar;
|
const struct condition_variable *var = info->condvar;
|
||||||
|
@@ -60,7 +60,7 @@ static uint8_t mf_low(uint32_t tx, uint32_t mini, uint32_t maxi)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
fuzzy_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
fuzzy_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
struct xt_fuzzy_mtinfo *info = (void *)par->matchinfo;
|
struct xt_fuzzy_mtinfo *info = (void *)par->matchinfo;
|
||||||
unsigned long amount;
|
unsigned long amount;
|
||||||
|
@@ -141,7 +141,7 @@ static bool geoip_bsearch(const struct geoip_subnet *range,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
xt_geoip_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
xt_geoip_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_geoip_match_info *info = par->matchinfo;
|
const struct xt_geoip_match_info *info = par->matchinfo;
|
||||||
const struct geoip_country_kernel *node;
|
const struct geoip_country_kernel *node;
|
||||||
|
@@ -41,7 +41,7 @@ static const struct xt_iface_flag_pairs xt_iface_lookup[] =
|
|||||||
};
|
};
|
||||||
|
|
||||||
static bool xt_iface_mt(const struct sk_buff *skb,
|
static bool xt_iface_mt(const struct sk_buff *skb,
|
||||||
const struct xt_match_param *par)
|
const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_iface_mtinfo *info = par->matchinfo;
|
const struct xt_iface_mtinfo *info = par->matchinfo;
|
||||||
struct net_device *dev;
|
struct net_device *dev;
|
||||||
|
@@ -808,7 +808,7 @@ static const struct {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
ipp2p_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
ipp2p_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct ipt_p2p_info *info = par->matchinfo;
|
const struct ipt_p2p_info *info = par->matchinfo;
|
||||||
const unsigned char *haystack;
|
const unsigned char *haystack;
|
||||||
|
@@ -29,7 +29,7 @@ static uint32_t ipv4options_rd(const uint8_t *data, int len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool ipv4options_mt(const struct sk_buff *skb,
|
static bool ipv4options_mt(const struct sk_buff *skb,
|
||||||
const struct xt_match_param *par)
|
const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_ipv4options_mtinfo1 *info = par->matchinfo;
|
const struct xt_ipv4options_mtinfo1 *info = par->matchinfo;
|
||||||
const struct iphdr *iph = ip_hdr(skb);
|
const struct iphdr *iph = ip_hdr(skb);
|
||||||
|
@@ -137,7 +137,7 @@ static bool xtlength_layer7(unsigned int *length, const struct sk_buff *skb,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
length2_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
length2_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_length_mtinfo2 *info = par->matchinfo;
|
const struct xt_length_mtinfo2 *info = par->matchinfo;
|
||||||
const struct iphdr *iph = ip_hdr(skb);
|
const struct iphdr *iph = ip_hdr(skb);
|
||||||
@@ -198,7 +198,7 @@ llayer4_proto(const struct sk_buff *skb, unsigned int *offset, bool *hotdrop)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
length2_mt6(const struct sk_buff *skb, const struct xt_match_param *par)
|
length2_mt6(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_length_mtinfo2 *info = par->matchinfo;
|
const struct xt_length_mtinfo2 *info = par->matchinfo;
|
||||||
const struct ipv6hdr *iph = ipv6_hdr(skb);
|
const struct ipv6hdr *iph = ipv6_hdr(skb);
|
||||||
|
@@ -171,7 +171,7 @@ static inline unsigned int lscan_mt_full(int mark,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
lscan_mt(const struct sk_buff *skb, const struct xt_match_param *par)
|
lscan_mt(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
const struct xt_lscan_mtinfo *info = par->matchinfo;
|
const struct xt_lscan_mtinfo *info = par->matchinfo;
|
||||||
enum ip_conntrack_info ctstate;
|
enum ip_conntrack_info ctstate;
|
||||||
|
@@ -100,7 +100,7 @@ static inline int hashfunc(struct in_addr addr)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
xt_psd_match(const struct sk_buff *pskb, const struct xt_match_param *match)
|
xt_psd_match(const struct sk_buff *pskb, const struct xt_action_param *match)
|
||||||
{
|
{
|
||||||
const struct iphdr *iph;
|
const struct iphdr *iph;
|
||||||
const struct tcphdr *tcph;
|
const struct tcphdr *tcph;
|
||||||
|
@@ -189,7 +189,7 @@ static void quota_mt2_destroy(const struct xt_mtdtor_param *par)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
quota_mt2(const struct sk_buff *skb, const struct xt_match_param *par)
|
quota_mt2(const struct sk_buff *skb, const struct xt_action_param *par)
|
||||||
{
|
{
|
||||||
struct xt_quota_mtinfo2 *q = (void *)par->matchinfo;
|
struct xt_quota_mtinfo2 *q = (void *)par->matchinfo;
|
||||||
struct xt_quota_counter *e = q->master;
|
struct xt_quota_counter *e = q->master;
|
||||||
|
Reference in New Issue
Block a user