From: Olivier Houchard Date: Thu, 23 May 2019 16:41:47 +0000 (+0200) Subject: MINOR: ssl: Don't forget to call the close method of the underlying xprt. X-Git-Tag: v2.0-dev5~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=692c1d07f90ed26aaf86b28b2694bf19712a9529;p=thirdparty%2Fhaproxy.git MINOR: ssl: Don't forget to call the close method of the underlying xprt. In ssl_sock_close(), don't forget to call the underlying xprt's close method if it exists. For now it's harmless not to do so, because the only available layer is the raw socket, which doesn't have a close method, but that will change when we implement QUIC. --- diff --git a/src/ssl_sock.c b/src/ssl_sock.c index 5393756c2b..2eb344dfaa 100644 --- a/src/ssl_sock.c +++ b/src/ssl_sock.c @@ -5854,6 +5854,8 @@ static void ssl_sock_close(struct connection *conn, void *xprt_ctx) { struct ssl_sock_ctx *ctx = xprt_ctx; if (ctx) { + if (ctx->xprt->close) + ctx->xprt->close(conn, ctx->xprt_ctx); #if (HA_OPENSSL_VERSION_NUMBER >= 0x1010000fL) && !defined(OPENSSL_NO_ASYNC) if (global_ssl.async) { OSSL_ASYNC_FD all_fd[32], afd;