From 7c4c830d04d53ed31e10a4f849b8ff96034e7690 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sat, 16 Oct 2021 14:54:19 +0200 Subject: [PATCH] BUG/MINOR: listener: add an error check for unallocatable trash Coverity noticed in issue #1416 that a missing allocation error was introduced in tcp_bind_listener() with the rework of error messages by commit ed1748553 ("MINOR: proto_tcp: use chunk_appendf() to ouput socket setup errors"). In practice nobody will ever face it but better address it anyway. No backport is needed. --- src/proto_tcp.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/proto_tcp.c b/src/proto_tcp.c index 18e9b80e4..a8b15b21a 100644 --- a/src/proto_tcp.c +++ b/src/proto_tcp.c @@ -589,6 +589,12 @@ int tcp_bind_listener(struct listener *listener, char *errmsg, int errlen) err = ERR_NONE; + if (!msg) { + if (errlen) + snprintf(errmsg, errlen, "out of memory"); + return ERR_ALERT | ERR_FATAL; + } + /* ensure we never return garbage */ if (errlen) *errmsg = 0;