From 50ea76a88b2ebcdcfeb6aa5a2a37975a99140fbd Mon Sep 17 00:00:00 2001 From: Eric Leblond Date: Sun, 6 Mar 2016 21:07:46 +0100 Subject: [PATCH] detect-tls: fix memleaks --- src/detect-tls.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/detect-tls.c b/src/detect-tls.c index 9b1d237baf..ba37aee0e6 100644 --- a/src/detect-tls.c +++ b/src/detect-tls.c @@ -277,6 +277,7 @@ static DetectTlsData *DetectTlsSubjectParse (char *str) } if (str_ptr[0] == '!') flag = DETECT_CONTENT_NEGATED; + pcre_free_substring(str_ptr); res = pcre_get_substring((char *)str, ov, MAX_SUBSTRINGS, 2, &str_ptr); if (res < 0) { @@ -295,6 +296,8 @@ static DetectTlsData *DetectTlsSubjectParse (char *str) if (unlikely(orig == NULL)) { goto error; } + pcre_free_substring(str_ptr); + tmp_str=orig; /* Let's see if we need to escape "'s */ @@ -484,6 +487,7 @@ static DetectTlsData *DetectTlsIssuerDNParse(char *str) } if (str_ptr[0] == '!') flag = DETECT_CONTENT_NEGATED; + pcre_free_substring(str_ptr); res = pcre_get_substring((char *)str, ov, MAX_SUBSTRINGS, 2, &str_ptr); if (res < 0) { @@ -502,6 +506,8 @@ static DetectTlsData *DetectTlsIssuerDNParse(char *str) if (unlikely(orig == NULL)) { goto error; } + pcre_free_substring(str_ptr); + tmp_str=orig; /* Let's see if we need to escape "'s */ @@ -627,6 +633,7 @@ static DetectTlsData *DetectTlsFingerprintParse (char *str) } if (str_ptr[0] == '!') flag = DETECT_CONTENT_NEGATED; + pcre_free_substring(str_ptr); res = pcre_get_substring((char *)str, ov, MAX_SUBSTRINGS, 2, &str_ptr); if (res < 0) { @@ -645,6 +652,8 @@ static DetectTlsData *DetectTlsFingerprintParse (char *str) if (unlikely(orig == NULL)) { goto error; } + pcre_free_substring(str_ptr); + tmp_str=orig; /* Let's see if we need to escape "'s */