From: Ilia Shipitsin Date: Mon, 13 Apr 2026 16:14:50 +0000 (+0200) Subject: BUG/MINOR: ssl: fix memory leaks on realloc failure in ssl_ckch.c X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=0c4b7d7f3446017723bbb2764755f3de4643f4bf;p=thirdparty%2Fhaproxy.git BUG/MINOR: ssl: fix memory leaks on realloc failure in ssl_ckch.c Replace bare realloc() calls with my_realloc2(), which frees the original pointer on allocation failure, preventing a memory leak when the pointer is subsequently overwritten with NULL. Must be backported to 3.2. --- diff --git a/src/ssl_ckch.c b/src/ssl_ckch.c index 122d314e6..75392a6c2 100644 --- a/src/ssl_ckch.c +++ b/src/ssl_ckch.c @@ -1098,7 +1098,7 @@ struct ckch_store *ckchs_dup(const struct ckch_store *src) /* copy the array of domain strings */ while (src->conf.acme.domains[n]) { - r = realloc(r, sizeof(char *) * (n + 2)); + r = my_realloc2(r, sizeof(char *) * (n + 2)); if (!r) goto error; @@ -5197,7 +5197,7 @@ int ckch_conf_parse(char **args, int cur_arg, struct ckch_conf *f, int *found, c do { while (*e != ',' && *e != '\0') e++; - r = realloc(r, sizeof(char *) * (n + 2)); + r = my_realloc2(r, sizeof(char *) * (n + 2)); if (!r) { ha_alert("parsing [%s:%d]: out of memory.\n", file, linenum); err_code |= ERR_ALERT | ERR_ABORT;