summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2022-01-26 23:10:51 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2022-01-26 23:31:12 +0100
commit9fa14396e6e60bafc4718e18a23073ff0276b53b (patch)
tree3fe859ac65d505da72a46701906c96da34c73acd /src
parent561aa3cfa8dabfb259c53ad020c3733f3f415bdd (diff)
optimize: check for payload base and offset when searching for mergers
Extend the existing checks to cover the payload base and offset. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r--src/optimize.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/optimize.c b/src/optimize.c
index 9a93e3b8..5882f3bd 100644
--- a/src/optimize.c
+++ b/src/optimize.c
@@ -40,6 +40,10 @@ static bool __expr_cmp(const struct expr *expr_a, const struct expr *expr_b)
switch (expr_a->etype) {
case EXPR_PAYLOAD:
+ if (expr_a->payload.base != expr_b->payload.base)
+ return false;
+ if (expr_a->payload.offset != expr_b->payload.offset)
+ return false;
if (expr_a->payload.desc != expr_b->payload.desc)
return false;
if (expr_a->payload.tmpl != expr_b->payload.tmpl)