diff options
author | Florian Westphal <fw@strlen.de> | 2023-11-19 13:05:55 +0100 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2023-11-20 14:11:12 +0100 |
commit | 256904b1ded6314974dddc75726149f7b19d33f4 (patch) | |
tree | 29b6aeda05204120ccbbb0630af738bc09c94cf8 /src/evaluate.c | |
parent | baf85d485f91f82d54b3cac3ab5d4893c9c930f8 (diff) |
evaluate: fix rule replacement with anon sets
nft replace rule t c handle 3 'jhash ip protocol . ip saddr mod 170 vmap { 0-94 : goto wan1, 95-169 : goto wan2, 170-269 }"'
BUG: unhandled op 2
nft: src/evaluate.c:1748: interval_set_eval: Assertion `0' failed.
Fixes: 81e36530fcac ("src: replace interval segment tree overlap and automerge")
Reported-by: Tino Reichardt <milky-netfilter@mcmilk.de>
Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'src/evaluate.c')
-rw-r--r-- | src/evaluate.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/evaluate.c b/src/evaluate.c index d1ec6ec4..13b6a603 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -1729,6 +1729,7 @@ static int interval_set_eval(struct eval_ctx *ctx, struct set *set, switch (ctx->cmd->op) { case CMD_CREATE: case CMD_ADD: + case CMD_REPLACE: case CMD_INSERT: if (set->automerge) { ret = set_automerge(ctx->msgs, ctx->cmd, set, init, |