summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2022-06-17 18:02:56 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2022-06-23 19:00:02 +0200
commitca8fd77a723e5813f93e0f9b1c473c7efca39d4d (patch)
tree25ffe8a4cac0b202df07f81b92165ce0a4d7487e
parent721efd64702f044cbe7004637bfaf02ad916a8f2 (diff)
optimize: add numgen expression support
Extend expr_cmp() to compare numgen expressions used in relational. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r--src/optimize.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/optimize.c b/src/optimize.c
index 54dde948..1fa46cb6 100644
--- a/src/optimize.c
+++ b/src/optimize.c
@@ -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: