]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
optimize: add numgen expression support
authorPablo Neira Ayuso <pablo@netfilter.org>
Fri, 17 Jun 2022 16:02:56 +0000 (18:02 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 23 Jun 2022 17:00:02 +0000 (19:00 +0200)
Extend expr_cmp() to compare numgen expressions used in relational.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/optimize.c

index 54dde948876f4f57e5e88f1516eb8171783b433f..1fa46cb6a663f0d6affea50b6a0a43918a3c5b58 100644 (file)
@@ -99,6 +99,14 @@ static bool __expr_cmp(const struct expr *expr_a, const struct expr *expr_b)
                if (expr_a->fib.result != expr_b->fib.result)
                        return false;
                break;
+       case EXPR_NUMGEN:
+               if (expr_a->numgen.type != expr_b->numgen.type)
+                       return false;
+               if (expr_a->numgen.mod != expr_b->numgen.mod)
+                       return false;
+               if (expr_a->numgen.offset != expr_b->numgen.offset)
+                       return false;
+               break;
        case EXPR_BINOP:
                return __expr_cmp(expr_a->left, expr_b->left);
        default: