From: Remi Tricot-Le Breton Date: Wed, 12 May 2021 16:07:27 +0000 (+0200) Subject: BUG/MINOR: proxy: Missing calloc return value check in proxy_defproxy_cpy X-Git-Tag: v2.5-dev1~222 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=18a82ba690a6ff4adbf9702cefa6dc89eb36372d;p=thirdparty%2Fhaproxy.git BUG/MINOR: proxy: Missing calloc return value check in proxy_defproxy_cpy A memory allocation failure happening in proxy_defproxy_cpy while copying the default compression options would have resulted in a crash. This function is called for every new proxy found while parsing the configuration. It was raised in GitHub issue #1233. It could be backported to all stable branches. --- diff --git a/src/proxy.c b/src/proxy.c index 079280c9c1..0e96571c02 100644 --- a/src/proxy.c +++ b/src/proxy.c @@ -1717,6 +1717,10 @@ static int proxy_defproxy_cpy(struct proxy *curproxy, const struct proxy *defpro /* default compression options */ if (defproxy->comp != NULL) { curproxy->comp = calloc(1, sizeof(*curproxy->comp)); + if (!curproxy->comp) { + memprintf(errmsg, "proxy '%s': out of memory for default compression options", curproxy->id); + return 1; + } curproxy->comp->algos = defproxy->comp->algos; curproxy->comp->types = defproxy->comp->types; }