From 80aae9b3b784ffdea3624117c548d500c56f24d9 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 19 Sep 2018 15:17:00 +0200 Subject: iptables: Use print_ifaces() from xtables Move the function to xshared.c for common use between legacy and xtables sources. While being at it, silence a covscan warning triggered by that function as it couldn't verify input buffers won't exceed IFNAMSIZ. Therefore use snprintf() when writing to the local buffer. Signed-off-by: Phil Sutter Signed-off-by: Florian Westphal --- iptables/nft-shared.c | 39 --------------------------------------- 1 file changed, 39 deletions(-) (limited to 'iptables/nft-shared.c') diff --git a/iptables/nft-shared.c b/iptables/nft-shared.c index a38ffd3a..fdd4522c 100644 --- a/iptables/nft-shared.c +++ b/iptables/nft-shared.c @@ -755,45 +755,6 @@ void print_rule_details(const struct iptables_command_state *cs, } } -void print_ifaces(const char *iniface, const char *outiface, uint8_t invflags, - unsigned int format) -{ - char iface[IFNAMSIZ+2]; - - if (!(format & FMT_VIA)) - return; - - if (invflags & IPT_INV_VIA_IN) { - iface[0] = '!'; - iface[1] = '\0'; - } else - iface[0] = '\0'; - - if (iniface[0] != '\0') - strcat(iface, iniface); - else if (format & FMT_NUMERIC) - strcat(iface, "*"); - else - strcat(iface, "any"); - - printf(FMT(" %-6s ","in %s "), iface); - - if (invflags & IPT_INV_VIA_OUT) { - iface[0] = '!'; - iface[1] = '\0'; - } else - iface[0] = '\0'; - - if (outiface[0] != '\0') - strcat(iface, outiface); - else if (format & FMT_NUMERIC) - strcat(iface, "*"); - else - strcat(iface, "any"); - - printf(FMT("%-6s ","out %s "), iface); -} - static void print_iface(char letter, const char *iface, const unsigned char *mask, int inv) { -- cgit v1.2.3