From: Daniel Stenberg Date: Wed, 13 May 2020 10:22:49 +0000 (+0200) Subject: ftp: shut down the secondary connection properly when SSL is used X-Git-Tag: curl-7_71_0~146 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f002c850d98dc2dbed34d6547a38a6c0b4c89e10;p=thirdparty%2Fcurl.git ftp: shut down the secondary connection properly when SSL is used Reported-by: Neal Poole Fixes #5340 Closes #5385 --- diff --git a/lib/ftp.c b/lib/ftp.c index 3b0f03b81c..289dab2590 100644 --- a/lib/ftp.c +++ b/lib/ftp.c @@ -221,6 +221,7 @@ static void close_secondarysocket(struct connectdata *conn) conn->sock[SECONDARYSOCKET] = CURL_SOCKET_BAD; } conn->bits.tcpconnect[SECONDARYSOCKET] = FALSE; + conn->bits.proxy_ssl_connected[SECONDARYSOCKET] = FALSE; } /* @@ -3231,9 +3232,9 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status, } if(conn->ssl[SECONDARYSOCKET].use) { - /* The secondary socket is using SSL so we must close down that part - first before we close the socket for real */ - Curl_ssl_close(conn, SECONDARYSOCKET); + /* The secondary socket used SSL so we must close down that part first + before we close the socket for real */ + result = Curl_ssl_shutdown(conn, SECONDARYSOCKET); /* Note that we keep "use" set to TRUE since that (next) connection is still requested to use SSL */