From: William Lallemand Date: Fri, 26 Sep 2025 08:34:35 +0000 (+0200) Subject: BUILD: acme: fix false positive null pointer dereference X-Git-Tag: v3.3-dev9~33 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b3b910cc3f342a5e86c79859d223efeafc61d53d;p=thirdparty%2Fhaproxy.git BUILD: acme: fix false positive null pointer dereference src/acme.c: In function ‘cfg_parse_acme_vars_provider’: src/acme.c:471:9: error: potential null pointer dereference [-Werror=null-dereference] 471 | free(*dst); | ^~~~~~~~~~ gcc13 on ubuntu 24.04 detects a false positive when building 3e72a9f ("MINOR: acme: provider-name for dpapi sink"). Indeed dst can't be NULL. Clarify the code so gcc don't complain anymore. --- diff --git a/src/acme.c b/src/acme.c index dcd26c8cd..4249638ca 100644 --- a/src/acme.c +++ b/src/acme.c @@ -466,9 +466,14 @@ static int cfg_parse_acme_vars_provider(char **args, int section_type, struct pr dst = &cur_acme->vars; } else if (strcmp(args[0], "provider-name") == 0) { dst = &cur_acme->provider; + } else { + err_code |= ERR_ALERT | ERR_FATAL; + ha_alert("parsing [%s:%d]: unsupported keyword '%s'.\n", file, linenum, args[0]); + goto out; } - free(*dst); + if (dst) + free(*dst); if (!*args[1]) { ha_alert("parsing [%s:%d]: keyword '%s' in '%s' section requires an argument\n", file, linenum, args[0], cursection);