diff options
-rw-r--r-- | src/parser_bison.y | 1 | ||||
-rw-r--r-- | tests/shell/testcases/bogons/nft-f/use_after_free_on_chain_removal | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/parser_bison.y b/src/parser_bison.y index ce80bcd9..c69252fe 100644 --- a/src/parser_bison.y +++ b/src/parser_bison.y @@ -1395,6 +1395,7 @@ delete_cmd : TABLE table_or_id_spec { $5->location = @5; handle_merge(&$3->handle, &$2); + close_scope(state); $$ = cmd_alloc(CMD_DELETE, CMD_OBJ_CHAIN, &$2, &@$, $5); } | RULE ruleid_spec diff --git a/tests/shell/testcases/bogons/nft-f/use_after_free_on_chain_removal b/tests/shell/testcases/bogons/nft-f/use_after_free_on_chain_removal new file mode 100644 index 00000000..bb9632b0 --- /dev/null +++ b/tests/shell/testcases/bogons/nft-f/use_after_free_on_chain_removal @@ -0,0 +1,5 @@ +delete chain d iUi { +}} +delete chain d hUi { +delete chain o +c b icmpv6 id$i |