From 47dd9a5ebc26dac25b63b5ca37062e7a63cd5335 Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Thu, 7 Jan 2021 09:46:02 +0100 Subject: [PATCH] signature: Fix leak in urilen parsing cf #4254 --- src/detect-urilen.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/detect-urilen.c b/src/detect-urilen.c index 3ba4322c0f..0a507840ec 100644 --- a/src/detect-urilen.c +++ b/src/detect-urilen.c @@ -220,13 +220,15 @@ error: if (urilend) SCFree(urilend); if (arg1 != NULL) - SCFree(arg1); + pcre_free_substring(arg1); if (arg2 != NULL) - SCFree(arg2); + pcre_free_substring(arg2); if (arg3 != NULL) - SCFree(arg3); + pcre_free_substring(arg3); if (arg4 != NULL) - SCFree(arg4); + pcre_free_substring(arg4); + if (arg5 != NULL) + pcre_free_substring(arg5); return NULL; } @@ -745,4 +747,4 @@ void DetectUrilenRegisterTests(void) UtRegisterTest("DetectUrilenSetpTest01", DetectUrilenSetpTest01); UtRegisterTest("DetectUrilenSigTest01", DetectUrilenSigTest01); } -#endif /* UNITTESTS */ \ No newline at end of file +#endif /* UNITTESTS */