From 8c918db6a7afc171fb2baf9c20ec6385940d2bfc Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 31 Oct 2018 20:13:34 +0100 Subject: xtables: Fix for matching rules with wildcard interfaces Due to xtables_parse_interface() and parse_ifname() being misaligned regarding interface mask setting, rules containing a wildcard interface added with iptables-nft could neither be checked nor deleted. As suggested, introduce extensions/iptables.t to hold checks for built-in selectors. This file is picked up by iptables-test.py as-is. The only limitation is that iptables is being used for it, so no ip6tables-specific things can be tested with it (for now). Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- iptables/nft-shared.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'iptables') diff --git a/iptables/nft-shared.c b/iptables/nft-shared.c index 492e4ec1..7b8ca5e4 100644 --- a/iptables/nft-shared.c +++ b/iptables/nft-shared.c @@ -249,7 +249,7 @@ static void parse_ifname(const char *name, unsigned int len, char *dst, unsigned return; dst[len++] = 0; if (mask) - memset(mask, 0xff, len + 1); + memset(mask, 0xff, len - 2); } int parse_meta(struct nftnl_expr *e, uint8_t key, char *iniface, -- cgit v1.2.3