From f964cdbc937df5e2864eaea319a0b2f8038d112f Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Wed, 11 Jan 2017 15:36:15 +0100 Subject: [PATCH] address parsing: fix memory leak in error path --- src/detect-engine-address.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/detect-engine-address.c b/src/detect-engine-address.c index a924855bcd..079ec36dc0 100644 --- a/src/detect-engine-address.c +++ b/src/detect-engine-address.c @@ -959,8 +959,11 @@ static int DetectAddressParse2(const DetectEngineCtx *de_ctx, if (DetectAddressParse2(de_ctx, gh, ghn, temp_rule_var_address, (negate + n_set) % 2, var_list) < 0) + { + if (temp_rule_var_address != rule_var_address) + SCFree(temp_rule_var_address); goto error; - + } d_set = 0; n_set = 0; if (temp_rule_var_address != rule_var_address)