diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2023-01-04 11:25:07 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2023-01-04 12:34:36 +0100 |
commit | 798499bdcfd3a745027c77687275b6a3abdd952e (patch) | |
tree | 79e39cf614fba916754e84fb5c16bf9c4a4f15f3 | |
parent | 9215d41addac21da9cf4747680a1021e7fd8396f (diff) |
optimize: payload expression requires inner_desc comparison
Since 772892a018b4 ("src: add vxlan matching support"), payload
expressions have an inner_desc field that provides the description for
the outer tunnel header.
When searching for common mergeable selectors, compare the inner
description too.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r-- | src/optimize.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/optimize.c b/src/optimize.c index 09013efc..32aed866 100644 --- a/src/optimize.c +++ b/src/optimize.c @@ -46,6 +46,8 @@ static bool __expr_cmp(const struct expr *expr_a, const struct expr *expr_b) return false; if (expr_a->payload.desc != expr_b->payload.desc) return false; + if (expr_a->payload.inner_desc != expr_b->payload.inner_desc) + return false; if (expr_a->payload.tmpl != expr_b->payload.tmpl) return false; break; |