http_proxy/hyper: handle closed connections

Enable test 1021 for hyper builds.

Patched-by: Prithvi MK
Fixes #8700
Closes #8806
This commit is contained in:
Daniel Stenberg 2022-05-06 10:00:24 +02:00
parent a15fa1c357
commit a8a1dd8ecc
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
3 changed files with 11 additions and 5 deletions

View File

@ -967,6 +967,13 @@ static CURLcode CONNECT(struct Curl_easy *data,
break; break;
} }
if(conn->bits.close && data->req.newurl) {
/* Connection closed by server. Don't use it anymore */
Curl_closesocket(data, conn, conn->sock[sockindex]);
conn->sock[sockindex] = CURL_SOCKET_BAD;
break;
}
/* If we are supposed to continue and request a new URL, which basically /* If we are supposed to continue and request a new URL, which basically
* means the HTTP authentication is still going on so if the tunnel * means the HTTP authentication is still going on so if the tunnel
* is complete we start over in INIT state */ * is complete we start over in INIT state */

View File

@ -50,7 +50,6 @@
671 671
672 672
673 673
1021
1417 1417
1533 1533
1540 1540

View File

@ -17,7 +17,7 @@ HTTP/1.1 407 Authorization Required to proxy me my dear swsclose
Proxy-Authenticate: NTLM Proxy-Authenticate: NTLM
Content-Length: 16 Content-Length: 16
Connection: close Connection: close
data to discard data to discard
</connect> </connect>
@ -26,7 +26,7 @@ data to discard
HTTP/1.1 407 Authorization Required to proxy me my dear HTTP/1.1 407 Authorization Required to proxy me my dear
Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
Content-Length: 28 Content-Length: 28
27 bytes and newline to ign 27 bytes and newline to ign
</connect1001> </connect1001>
@ -64,11 +64,11 @@ HTTP/1.1 407 Authorization Required to proxy me my dear swsclose
Proxy-Authenticate: NTLM Proxy-Authenticate: NTLM
Content-Length: 16 Content-Length: 16
Connection: close Connection: close
HTTP/1.1 407 Authorization Required to proxy me my dear HTTP/1.1 407 Authorization Required to proxy me my dear
Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
Content-Length: 28 Content-Length: 28
HTTP/1.1 200 Things are fine in proxy land HTTP/1.1 200 Things are fine in proxy land
Server: Microsoft-IIS/5.0 Server: Microsoft-IIS/5.0
Content-Type: text/html; charset=iso-8859-1 Content-Type: text/html; charset=iso-8859-1