[NETFILTER]: x_tables: switch xt_target->checkentry to bool
Switch the return type of target checkentry functions to boolean. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ccb79bdce7
commit
e1931b784a
@@ -76,7 +76,7 @@ target(struct sk_buff **pskb,
|
||||
return XT_CONTINUE;
|
||||
}
|
||||
|
||||
static int
|
||||
static bool
|
||||
checkentry(const char *tablename,
|
||||
const void *entry,
|
||||
const struct xt_target *target,
|
||||
@@ -88,21 +88,21 @@ checkentry(const char *tablename,
|
||||
if (nf_ct_l3proto_try_module_get(target->family) < 0) {
|
||||
printk(KERN_WARNING "can't load conntrack support for "
|
||||
"proto=%d\n", target->family);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
if (matchinfo->mode == XT_CONNMARK_RESTORE) {
|
||||
if (strcmp(tablename, "mangle") != 0) {
|
||||
printk(KERN_WARNING "CONNMARK: restore can only be "
|
||||
"called from \"mangle\" table, not \"%s\"\n",
|
||||
tablename);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (matchinfo->mark > 0xffffffff || matchinfo->mask > 0xffffffff) {
|
||||
printk(KERN_WARNING "CONNMARK: Only supports 32bit mark\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -85,16 +85,16 @@ static unsigned int target(struct sk_buff **pskb, const struct net_device *in,
|
||||
return XT_CONTINUE;
|
||||
}
|
||||
|
||||
static int checkentry(const char *tablename, const void *entry,
|
||||
const struct xt_target *target, void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
static bool checkentry(const char *tablename, const void *entry,
|
||||
const struct xt_target *target, void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
{
|
||||
struct xt_connsecmark_target_info *info = targinfo;
|
||||
|
||||
if (nf_ct_l3proto_try_module_get(target->family) < 0) {
|
||||
printk(KERN_WARNING "can't load conntrack support for "
|
||||
"proto=%d\n", target->family);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
switch (info->mode) {
|
||||
case CONNSECMARK_SAVE:
|
||||
@@ -103,10 +103,10 @@ static int checkentry(const char *tablename, const void *entry,
|
||||
|
||||
default:
|
||||
printk(KERN_INFO PFX "invalid mode: %hu\n", info->mode);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -66,19 +66,19 @@ static unsigned int target6(struct sk_buff **pskb,
|
||||
return XT_CONTINUE;
|
||||
}
|
||||
|
||||
static int checkentry(const char *tablename,
|
||||
const void *e_void,
|
||||
const struct xt_target *target,
|
||||
void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
static bool checkentry(const char *tablename,
|
||||
const void *e_void,
|
||||
const struct xt_target *target,
|
||||
void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
{
|
||||
const u_int8_t dscp = ((struct xt_DSCP_info *)targinfo)->dscp;
|
||||
|
||||
if ((dscp > XT_DSCP_MAX)) {
|
||||
printk(KERN_WARNING "DSCP: dscp %x out of range\n", dscp);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static struct xt_target xt_dscp_target[] = {
|
||||
|
@@ -65,7 +65,7 @@ target_v1(struct sk_buff **pskb,
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
static bool
|
||||
checkentry_v0(const char *tablename,
|
||||
const void *entry,
|
||||
const struct xt_target *target,
|
||||
@@ -76,12 +76,12 @@ checkentry_v0(const char *tablename,
|
||||
|
||||
if (markinfo->mark > 0xffffffff) {
|
||||
printk(KERN_WARNING "MARK: Only supports 32bit wide mark\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static int
|
||||
static bool
|
||||
checkentry_v1(const char *tablename,
|
||||
const void *entry,
|
||||
const struct xt_target *target,
|
||||
@@ -95,13 +95,13 @@ checkentry_v1(const char *tablename,
|
||||
&& markinfo->mode != XT_MARK_OR) {
|
||||
printk(KERN_WARNING "MARK: unknown mode %u\n",
|
||||
markinfo->mode);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
if (markinfo->mark > 0xffffffff) {
|
||||
printk(KERN_WARNING "MARK: Only supports 32bit wide mark\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
|
@@ -38,7 +38,7 @@ nflog_target(struct sk_buff **pskb,
|
||||
return XT_CONTINUE;
|
||||
}
|
||||
|
||||
static int
|
||||
static bool
|
||||
nflog_checkentry(const char *tablename, const void *entry,
|
||||
const struct xt_target *target, void *targetinfo,
|
||||
unsigned int hookmask)
|
||||
@@ -46,10 +46,10 @@ nflog_checkentry(const char *tablename, const void *entry,
|
||||
struct xt_nflog_info *info = targetinfo;
|
||||
|
||||
if (info->flags & ~XT_NFLOG_MASK)
|
||||
return 0;
|
||||
return false;
|
||||
if (info->prefix[sizeof(info->prefix) - 1] != '\0')
|
||||
return 0;
|
||||
return 1;
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
static struct xt_target xt_nflog_target[] = {
|
||||
|
@@ -51,7 +51,7 @@ static unsigned int target(struct sk_buff **pskb, const struct net_device *in,
|
||||
return XT_CONTINUE;
|
||||
}
|
||||
|
||||
static int checkentry_selinux(struct xt_secmark_target_info *info)
|
||||
static bool checkentry_selinux(struct xt_secmark_target_info *info)
|
||||
{
|
||||
int err;
|
||||
struct xt_secmark_target_selinux_info *sel = &info->u.sel;
|
||||
@@ -63,50 +63,50 @@ static int checkentry_selinux(struct xt_secmark_target_info *info)
|
||||
if (err == -EINVAL)
|
||||
printk(KERN_INFO PFX "invalid SELinux context \'%s\'\n",
|
||||
sel->selctx);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!sel->selsid) {
|
||||
printk(KERN_INFO PFX "unable to map SELinux context \'%s\'\n",
|
||||
sel->selctx);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
err = selinux_relabel_packet_permission(sel->selsid);
|
||||
if (err) {
|
||||
printk(KERN_INFO PFX "unable to obtain relabeling permission\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static int checkentry(const char *tablename, const void *entry,
|
||||
const struct xt_target *target, void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
static bool checkentry(const char *tablename, const void *entry,
|
||||
const struct xt_target *target, void *targinfo,
|
||||
unsigned int hook_mask)
|
||||
{
|
||||
struct xt_secmark_target_info *info = targinfo;
|
||||
|
||||
if (mode && mode != info->mode) {
|
||||
printk(KERN_INFO PFX "mode already set to %hu cannot mix with "
|
||||
"rules for mode %hu\n", mode, info->mode);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
switch (info->mode) {
|
||||
case SECMARK_MODE_SEL:
|
||||
if (!checkentry_selinux(info))
|
||||
return 0;
|
||||
return false;
|
||||
break;
|
||||
|
||||
default:
|
||||
printk(KERN_INFO PFX "invalid mode: %hu\n", info->mode);
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!mode)
|
||||
mode = info->mode;
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
static struct xt_target xt_secmark_target[] = {
|
||||
|
@@ -197,19 +197,19 @@ xt_tcpmss_target6(struct sk_buff **pskb,
|
||||
#define TH_SYN 0x02
|
||||
|
||||
/* Must specify -p tcp --syn */
|
||||
static inline int find_syn_match(const struct xt_entry_match *m)
|
||||
static inline bool find_syn_match(const struct xt_entry_match *m)
|
||||
{
|
||||
const struct xt_tcp *tcpinfo = (const struct xt_tcp *)m->data;
|
||||
|
||||
if (strcmp(m->u.kernel.match->name, "tcp") == 0 &&
|
||||
tcpinfo->flg_cmp & TH_SYN &&
|
||||
!(tcpinfo->invflags & XT_TCP_INV_FLAGS))
|
||||
return 1;
|
||||
return true;
|
||||
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
static int
|
||||
static bool
|
||||
xt_tcpmss_checkentry4(const char *tablename,
|
||||
const void *entry,
|
||||
const struct xt_target *target,
|
||||
@@ -225,16 +225,16 @@ xt_tcpmss_checkentry4(const char *tablename,
|
||||
(1 << NF_IP_POST_ROUTING))) != 0) {
|
||||
printk("xt_TCPMSS: path-MTU clamping only supported in "
|
||||
"FORWARD, OUTPUT and POSTROUTING hooks\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
if (IPT_MATCH_ITERATE(e, find_syn_match))
|
||||
return 1;
|
||||
return true;
|
||||
printk("xt_TCPMSS: Only works on TCP SYN packets\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
#if defined(CONFIG_IP6_NF_IPTABLES) || defined(CONFIG_IP6_NF_IPTABLES_MODULE)
|
||||
static int
|
||||
static bool
|
||||
xt_tcpmss_checkentry6(const char *tablename,
|
||||
const void *entry,
|
||||
const struct xt_target *target,
|
||||
@@ -250,12 +250,12 @@ xt_tcpmss_checkentry6(const char *tablename,
|
||||
(1 << NF_IP6_POST_ROUTING))) != 0) {
|
||||
printk("xt_TCPMSS: path-MTU clamping only supported in "
|
||||
"FORWARD, OUTPUT and POSTROUTING hooks\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
if (IP6T_MATCH_ITERATE(e, find_syn_match))
|
||||
return 1;
|
||||
return true;
|
||||
printk("xt_TCPMSS: Only works on TCP SYN packets\n");
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user