diff --git a/src/detect-engine-address.c b/src/detect-engine-address.c index 2abee10ffd..53a983a3f3 100644 --- a/src/detect-engine-address.c +++ b/src/detect-engine-address.c @@ -843,11 +843,12 @@ static int DetectAddressParseInternal(const DetectEngineCtx *de_ctx, DetectAddre SCLogDebug("rule_var_address %s", rule_var_address); if ((negate + n_set) % 2) { - temp_rule_var_address = SCMalloc(strlen(rule_var_address) + 3); + /* add +1 to safisfy gcc 15 + -Wformat-truncation=2 */ + const size_t str_size = strlen(rule_var_address) + 3 + 1; + temp_rule_var_address = SCMalloc(str_size); if (unlikely(temp_rule_var_address == NULL)) goto error; - snprintf(temp_rule_var_address, strlen(rule_var_address) + 3, - "[%s]", rule_var_address); + snprintf(temp_rule_var_address, str_size, "[%s]", rule_var_address); } else { temp_rule_var_address = SCStrdup(rule_var_address); if (unlikely(temp_rule_var_address == NULL)) @@ -911,11 +912,12 @@ static int DetectAddressParseInternal(const DetectEngineCtx *de_ctx, DetectAddre SCLogDebug("rule_var_address %s", rule_var_address); if ((negate + n_set) % 2) { - temp_rule_var_address = SCMalloc(strlen(rule_var_address) + 3); + /* add +1 to safisfy gcc 15 + -Wformat-truncation=2 */ + const size_t str_size = strlen(rule_var_address) + 3 + 1; + temp_rule_var_address = SCMalloc(str_size); if (unlikely(temp_rule_var_address == NULL)) goto error; - snprintf(temp_rule_var_address, strlen(rule_var_address) + 3, - "[%s]", rule_var_address); + snprintf(temp_rule_var_address, str_size, "[%s]", rule_var_address); } else { temp_rule_var_address = SCStrdup(rule_var_address); if (unlikely(temp_rule_var_address == NULL))