payload_match_postprocess() expects a relational with payload of his lhs
and value on the rhs.
Moreover, payload_match_expand() releases the previous expression so
valgrind reports an use-after-free when pruning the implicit binop.
Fix this by calling payload_match_postprocess() in first place.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
value->len = payload->len;
}
- payload_match_postprocess(ctx, expr, payload);
-
assert(expr->left->ops->type == EXPR_BINOP);
-
assert(binop->left == payload);
expr->left = expr_get(payload);
expr_free(binop);
+
+ payload_match_postprocess(ctx, expr, payload);
}
}