]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
parser_bison: free chain name after creating constant expression
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 10 Jun 2019 17:23:40 +0000 (19:23 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 10 Jun 2019 17:24:06 +0000 (19:24 +0200)
==2330== 2 bytes in 1 blocks are definitely lost in loss record 1 of 1
==2330==    at 0x4C2BBAF: malloc (vg_replace_malloc.c:299)
==2330==    by 0x583D3B9: strdup (strdup.c:42)
==2330==    by 0x4E7966D: xstrdup (utils.c:75)
==2330==    by 0x4E9C283: nft_lex (scanner.l:626)
==2330==    by 0x4E8E3C2: nft_parse (parser_bison.c:5297)
==2330==    by 0x4E7EAB2: nft_parse_bison_filename (libnftables.c:374)
==2330==    by 0x4E7EAB2: nft_run_cmd_from_filename (libnftables.c:475)
==2330==    by 0x109A53: main (main.c:310)

Fixes: f1e8a129ee42 ("src: Introduce chain_expr in jump and goto statements")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/parser_bison.y

index 5ffb5cc221453098c93f86d41578a83bb874417e..97a48f38af0c4bc3e6c5fc437f63d63a3edb15a7 100644 (file)
@@ -3826,6 +3826,7 @@ chain_expr                :       variable_expr
                                                         BYTEORDER_HOST_ENDIAN,
                                                         strlen($1) * BITS_PER_BYTE,
                                                         $1);
+                               xfree($1);
                        }
                        ;