summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/evaluate.c2
-rwxr-xr-xtests/shell/testcases/sets/0033add_set_simple_flat_09
2 files changed, 11 insertions, 0 deletions
diff --git a/src/evaluate.c b/src/evaluate.c
index aee5b1c1..265a73fe 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -3472,6 +3472,8 @@ int cmd_evaluate(struct eval_ctx *ctx, struct cmd *cmd)
erec_destroy(erec);
}
+ memset(&ctx->ectx, 0, sizeof(ctx->ectx));
+
ctx->cmd = cmd;
switch (cmd->op) {
case CMD_ADD:
diff --git a/tests/shell/testcases/sets/0033add_set_simple_flat_0 b/tests/shell/testcases/sets/0033add_set_simple_flat_0
new file mode 100755
index 00000000..86be0c99
--- /dev/null
+++ b/tests/shell/testcases/sets/0033add_set_simple_flat_0
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+RULESET="add table ip x
+add set x setA {type ipv4_addr . inet_service . ipv4_addr; flags timeout;}
+add set x setB {type ipv4_addr . inet_service; flags timeout;}
+"
+
+set -e
+$NFT -f - <<< "$RULESET"