]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
payload: honor inner payload description in payload_expr_cmp()
authorPablo Neira Ayuso <pablo@netfilter.org>
Tue, 25 Feb 2025 23:39:01 +0000 (00:39 +0100)
committerFlorian Westphal <fw@strlen.de>
Wed, 26 Feb 2025 00:28:27 +0000 (01:28 +0100)
payload comparison must consider inner_desc.

No test update because I could not find any specific bug related to
this. I found it through source code inspection.

Fixes: 772892a018b4 ("src: add vxlan matching support")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
src/payload.c

index 866cd9bc2b052ad59d9db296b5c42a3c4e4efe78..ee6b39a34cb469b8ee0b67b3012af2a3b2143c10 100644 (file)
@@ -62,7 +62,8 @@ static void payload_expr_print(const struct expr *expr, struct output_ctx *octx)
 
 bool payload_expr_cmp(const struct expr *e1, const struct expr *e2)
 {
-       return e1->payload.desc   == e2->payload.desc &&
+       return e1->payload.inner_desc == e2->payload.inner_desc &&
+              e1->payload.desc   == e2->payload.desc &&
               e1->payload.tmpl   == e2->payload.tmpl &&
               e1->payload.base   == e2->payload.base &&
               e1->payload.offset == e2->payload.offset;