diff --git a/lib/http_proxy.c b/lib/http_proxy.c index f095455a5..75c7a60c3 100644 --- a/lib/http_proxy.c +++ b/lib/http_proxy.c @@ -58,8 +58,9 @@ static CURLcode https_proxy_connect(struct connectdata *conn, int sockindex) Curl_ssl_connect_nonblocking(conn, sockindex, &conn->bits.proxy_ssl_connected[sockindex]); if(result) - conn->bits.close = TRUE; /* a failed connection is marked for closure to - prevent (bad) re-use or similar */ + /* a failed connection is marked for closure to prevent (bad) re-use or + similar */ + connclose(conn, "TLS handshake failed"); } return result; #else diff --git a/lib/multi.c b/lib/multi.c index 1fa6b092b..cc11ea617 100755 --- a/lib/multi.c +++ b/lib/multi.c @@ -639,7 +639,7 @@ static CURLcode multi_done(struct Curl_easy *data, ) || conn->bits.close || (premature && !(conn->handler->flags & PROTOPT_STREAM))) { CURLcode res2; - conn->bits.close = TRUE; /* forcibly prevents reuse */ + connclose(conn, "disconnecting"); CONN_UNLOCK(data); res2 = Curl_disconnect(data, conn, premature);