diff options
author | Florian Westphal <fw@strlen.de> | 2018-11-12 14:40:41 +0100 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2018-11-12 18:33:03 +0100 |
commit | 61d6c3834de32c0ff5808c93da94b2b30b4791c8 (patch) | |
tree | 9286c86102bc3692e6ac30d561fd407de76c257f /extensions/libebt_mark_m.c | |
parent | 5edb249b25da2d27bca886eb1aa03e6ce65cc8ca (diff) |
xtables: add 'printf' attribute to xlate_add
This allows gcc to check format string vs. passed arguments.
Fix the fallout from this as well, typical warning produced is:
libebt_mark_m.c:112:28: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=]
xt_xlate_add(xl, "and 0x%x %s0 ", info->mask, ...
~^ ~~~~~~~~~~
so add the required casts or fixup format strings as needed.
libxt_conntrack also passed an unneeded argument (port), so remove that.
Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'extensions/libebt_mark_m.c')
-rw-r--r-- | extensions/libebt_mark_m.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/extensions/libebt_mark_m.c b/extensions/libebt_mark_m.c index 7bde77d9..64ad926f 100644 --- a/extensions/libebt_mark_m.c +++ b/extensions/libebt_mark_m.c @@ -109,14 +109,14 @@ static int brmark_m_xlate(struct xt_xlate *xl, xt_xlate_add(xl, "meta mark "); if (info->bitmask == EBT_MARK_OR) { - xt_xlate_add(xl, "and 0x%x %s0 ", info->mask, + xt_xlate_add(xl, "and 0x%x %s0 ", (uint32_t)info->mask, info->invert ? "" : "!= "); } else if (info->mask != 0xffffffffU) { - xt_xlate_add(xl, "and 0x%x %s0x%x ", info->mask, - op == XT_OP_EQ ? "" : "!= ", info->mark); + xt_xlate_add(xl, "and 0x%x %s0x%x ", (uint32_t)info->mask, + op == XT_OP_EQ ? "" : "!= ", (uint32_t)info->mark); } else { xt_xlate_add(xl, "%s0x%x ", - op == XT_OP_EQ ? "" : "!= ", info->mark); + op == XT_OP_EQ ? "" : "!= ", (uint32_t)info->mark); } return 1; |