]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
threshold: fix potential memory leak 5325/head
authorVictor Julien <victor@inliniac.net>
Tue, 25 Aug 2020 14:06:34 +0000 (16:06 +0200)
committerVictor Julien <victor@inliniac.net>
Tue, 25 Aug 2020 17:38:38 +0000 (19:38 +0200)
src/util-threshold-config.c

index 8b57ff7f75a0d6516326734c247c39b6bad90102..b08935db06f23c250408cf6fb4b9845a473b6c1a 100644 (file)
@@ -643,7 +643,7 @@ static int ParseThresholdRule(DetectEngineCtx *de_ctx, char *rawstr,
     uint8_t *ret_parsed_type, uint8_t *ret_parsed_track,
     uint32_t *ret_parsed_count, uint32_t *ret_parsed_seconds, uint32_t *ret_parsed_timeout,
     uint8_t *ret_parsed_new_action,
-    const char **ret_th_ip)
+    char **ret_th_ip)
 {
     char th_rule_type[32];
     char th_gid[16];
@@ -968,7 +968,7 @@ static int SCThresholdConfAddThresholdtype(char *rawstr, DetectEngineCtx *de_ctx
     uint32_t parsed_count = 0;
     uint32_t parsed_seconds = 0;
     uint32_t parsed_timeout = 0;
-    const char *th_ip = NULL;
+    char *th_ip = NULL;
     uint32_t id = 0, gid = 0;
 
     int r = 0;
@@ -991,10 +991,11 @@ static int SCThresholdConfAddThresholdtype(char *rawstr, DetectEngineCtx *de_ctx
         goto error;
     }
 
+    SCFree(th_ip);
     return 0;
 error:
     if (th_ip != NULL)
-        SCFree((char *)th_ip);
+        SCFree(th_ip);
     return -1;
 }