From 154891cf2619ed171388ac13747be38b72b216e1 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Tue, 23 Feb 2016 12:12:24 +0100 Subject: [PATCH] pcre: work around harmless coverity warnings --- src/detect-pcre.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/detect-pcre.c b/src/detect-pcre.c index d69f1da6f9..c14fe9f512 100644 --- a/src/detect-pcre.c +++ b/src/detect-pcre.c @@ -306,8 +306,12 @@ static DetectPcreData *DetectPcreParse (DetectEngineCtx *de_ctx, char *regexstr, int ret = 0, res = 0; int ov[MAX_SUBSTRINGS]; - size_t slen = strlen(regexstr); - char re[slen], op_str[64] = ""; + /* take the size of the whole input as buffer size for the regex we will + * extract below. Add 1 to please Coverity's alloc_strlen test. */ + size_t slen = strlen(regexstr) + 1; + char re[slen]; + + char op_str[64] = ""; uint16_t pos = 0; uint8_t negate = 0; @@ -591,7 +595,10 @@ static int DetectPcreParseCapture(char *regexstr, DetectEngineCtx *de_ctx, Detec int ret = 0, res = 0; int ov[MAX_SUBSTRINGS]; char type_str[16] = ""; - size_t cap_buffer_len = strlen(regexstr); + + /* take the size of the whole input as buffer size for the string we will + * extract below. Add 1 to please Coverity's alloc_strlen test. */ + size_t cap_buffer_len = strlen(regexstr) + 1; char capture_str[cap_buffer_len]; memset(capture_str, 0x00, cap_buffer_len); -- 2.47.2