]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
netfilter: nf_tables: hide clash bit from userspace
authorFlorian Westphal <fw@strlen.de>
Mon, 7 Jul 2025 20:32:44 +0000 (22:32 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 14 Jul 2025 13:22:35 +0000 (15:22 +0200)
Its a kernel implementation detail, at least at this time:

We can later decide to revert this patch if there is a compelling
reason, but then we should also remove the ifdef that prevents exposure
of ip_conntrack_status enum IPS_NAT_CLASH value in the uapi header.

Clash entries are not included in dumps (true for both old /proc
and ctnetlink) either.  So for now exclude the clash bit when dumping.

Fixes: 7e5c6aa67e6f ("netfilter: nf_tables: add packets conntrack state to debug trace info")
Link: https://lore.kernel.org/netfilter-devel/aGwf3dCggwBlRKKC@strlen.de/
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nf_tables_trace.c

index ae3fe87195abc7c9d01d550dde8c4d70688ce7e7..a88abae5a9de2f80f253ac4e288e774f9dd6307e 100644 (file)
@@ -127,6 +127,9 @@ static int nf_trace_fill_ct_info(struct sk_buff *nlskb,
                if (nla_put_be32(nlskb, NFTA_TRACE_CT_ID, (__force __be32)id))
                        return -1;
 
+               /* Kernel implementation detail, withhold this from userspace for now */
+               status &= ~IPS_NAT_CLASH;
+
                if (status && nla_put_be32(nlskb, NFTA_TRACE_CT_STATUS, htonl(status)))
                        return -1;
        }