From: Olivier Houchard Date: Tue, 29 Jan 2019 18:11:16 +0000 (+0100) Subject: BUG/MEDIUM: servers: Close the connection if we failed to install the mux. X-Git-Tag: v2.0-dev1~116 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=74931147292699384e42343b2fac59003ee73b0c;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: servers: Close the connection if we failed to install the mux. If we failed to install the mux, just close the connection, or conn_fd_handler() will be called for the FD, and crash as soon as it attempts to access the mux' wake method. This should be backported to 1.9. --- diff --git a/src/backend.c b/src/backend.c index 82c71c4feb..e4bd5bf54e 100644 --- a/src/backend.c +++ b/src/backend.c @@ -1465,8 +1465,10 @@ int connect_server(struct stream *s) * fail, and flag the connection as CO_FL_ERROR. */ if (init_mux) { - if (conn_install_mux_be(srv_conn, srv_cs, s->sess) < 0) + if (conn_install_mux_be(srv_conn, srv_cs, s->sess) < 0) { + conn_full_close(srv_conn); return SF_ERR_INTERNAL; + } /* If we're doing http-reuse always, and the connection * is an http2 connection, add it to the available list, * so that others can use it right away.