From 29d0b6b0526ed9b661db9f1c8dbd2abbff11483a Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Mon, 10 Jun 2019 19:23:40 +0200 Subject: parser_bison: free chain name after creating constant expression ==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 --- src/parser_bison.y | 1 + 1 file changed, 1 insertion(+) (limited to 'src/parser_bison.y') diff --git a/src/parser_bison.y b/src/parser_bison.y index 5ffb5cc2..97a48f38 100644 --- a/src/parser_bison.y +++ b/src/parser_bison.y @@ -3826,6 +3826,7 @@ chain_expr : variable_expr BYTEORDER_HOST_ENDIAN, strlen($1) * BITS_PER_BYTE, $1); + xfree($1); } ; -- cgit v1.2.3