From 1729ab7d946771db645f7bffb552e60278b066b7 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Fri, 20 Oct 2017 09:50:59 +0200 Subject: [PATCH] detect: fix port parsing memory leak Leak in error path as seen by scan-build: CC detect-engine-port.o detect-engine-port.c:1083:13: warning: Potential leak of memory pointed to by 'temp_rule_var_port' return -1; ^ --- src/detect-engine-port.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/detect-engine-port.c b/src/detect-engine-port.c index db0ab8354f..72f28c599e 100644 --- a/src/detect-engine-port.c +++ b/src/detect-engine-port.c @@ -977,9 +977,10 @@ static int DetectPortParseDo(const DetectEngineCtx *de_ctx, temp_rule_var_port = alloc_rule_var_port; r = DetectPortParseDo(de_ctx, head, nhead, temp_rule_var_port, (negate + n_set) % 2, var_list);//negate? negate: n_set); - if (r == -1) + if (r == -1) { + SCFree(alloc_rule_var_port); goto error; - + } d_set = 0; n_set = 0; SCFree(alloc_rule_var_port); -- 2.47.2