From f027cbf82445eec0c0f43e0025b5427bea467958 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Wed, 19 Feb 2020 20:56:42 +0100 Subject: parser_bison: memleak in device parser ==1135425== 9 bytes in 1 blocks are definitely lost in loss record 1 of 1 ==1135425== at 0x483577F: malloc (vg_replace_malloc.c:309) ==1135425== by 0x4BE846A: strdup (strdup.c:42) ==1135425== by 0x48A5EDD: xstrdup (utils.c:75) ==1135425== by 0x48C9A20: nft_lex (scanner.l:640) ==1135425== by 0x48BC1A4: nft_parse (parser_bison.c:5682) ==1135425== by 0x48AC336: nft_parse_bison_buffer (libnftables.c:375) ==1135425== by 0x48AC336: nft_run_cmd_from_buffer (libnftables.c:443) ==1135425== by 0x10A707: main (main.c:384) Signed-off-by: Pablo Neira Ayuso --- src/parser_bison.y | 1 + 1 file changed, 1 insertion(+) diff --git a/src/parser_bison.y b/src/parser_bison.y index cc77d042..ad512cdb 100644 --- a/src/parser_bison.y +++ b/src/parser_bison.y @@ -2141,6 +2141,7 @@ dev_spec : DEVICE string expr = constant_expr_alloc(&@$, &string_type, BYTEORDER_HOST_ENDIAN, strlen($2) * BITS_PER_BYTE, $2); + xfree($2); $$ = compound_expr_alloc(&@$, EXPR_LIST); compound_expr_add($$, expr); -- cgit v1.2.3