From: Willy Tarreau Date: Thu, 29 Dec 2022 10:11:02 +0000 (+0100) Subject: MINOR: cfgparse-ssl: avoid a possible crash on OOM in ssl_bind_parse_npn() X-Git-Tag: v2.8-dev1~27 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c57fb3be75d0cd36919ce94d5ef1d13ee6b15f98;p=thirdparty%2Fhaproxy.git MINOR: cfgparse-ssl: avoid a possible crash on OOM in ssl_bind_parse_npn() Upon out of memory condition at boot, we could possibly crash when parsing the "npn" bind line keyword since it's used unchecked. There's no real need to backport this though it will not hurt. --- diff --git a/src/cfgparse-ssl.c b/src/cfgparse-ssl.c index 4f999e1066..75af0e838b 100644 --- a/src/cfgparse-ssl.c +++ b/src/cfgparse-ssl.c @@ -1016,6 +1016,11 @@ static int ssl_bind_parse_npn(char **args, int cur_arg, struct proxy *px, struct */ conf->npn_len = strlen(args[cur_arg + 1]) + 1; conf->npn_str = calloc(1, conf->npn_len + 1); + if (!conf->npn_str) { + memprintf(err, "out of memory"); + return ERR_ALERT | ERR_FATAL; + } + memcpy(conf->npn_str + 1, args[cur_arg + 1], conf->npn_len); /* replace commas with the name length */