Since 772892a018b4 ("src: add vxlan matching support"), payload expressions have a 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@xxxxxxxxxxxxx> --- src/optimize.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/optimize.c b/src/optimize.c index 09013efc548c..32aed866eb49 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; -- 2.30.2