]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
http_proxy/hyper: handle closed connections
authorDaniel Stenberg <daniel@haxx.se>
Fri, 6 May 2022 08:00:24 +0000 (10:00 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 6 May 2022 09:01:54 +0000 (11:01 +0200)
Enable test 1021 for hyper builds.

Patched-by: Prithvi MK
Fixes #8700
Closes #8806

lib/http_proxy.c
tests/data/DISABLED
tests/data/test1021

index 863cbbbdced7ce564dc1523053d1840c7032a86b..ed08193e1e5d465db49f961bf7da22a01daad129 100644 (file)
@@ -967,6 +967,13 @@ static CURLcode CONNECT(struct Curl_easy *data,
       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
      * means the HTTP authentication is still going on so if the tunnel
      * is complete we start over in INIT state */
index efdfeefc824db2452f986991412b40ff9cfcfa30..453a0ecebee2a875562d9866980df0a45e64ff1f 100644 (file)
@@ -50,7 +50,6 @@
 671
 672
 673
-1021
 1417
 1533
 1540
index 9afe95f4bbdf145d066bfe24856903b866620b7d..59901cae0a0c9aab935f66b923dcac989701695c 100644 (file)
@@ -17,7 +17,7 @@ HTTP/1.1 407 Authorization Required to proxy me my dear swsclose
 Proxy-Authenticate: NTLM\r
 Content-Length: 16\r
 Connection: close\r
-
+\r
 data to discard
 </connect>
 
@@ -26,7 +26,7 @@ data to discard
 HTTP/1.1 407 Authorization Required to proxy me my dear\r
 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==\r
 Content-Length: 28\r
-
+\r
 27 bytes and newline to ign
 </connect1001>
 
@@ -64,11 +64,11 @@ HTTP/1.1 407 Authorization Required to proxy me my dear swsclose
 Proxy-Authenticate: NTLM\r
 Content-Length: 16\r
 Connection: close\r
-
+\r
 HTTP/1.1 407 Authorization Required to proxy me my dear\r
 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==\r
 Content-Length: 28\r
-
+\r
 HTTP/1.1 200 Things are fine in proxy land\r
 Server: Microsoft-IIS/5.0\r
 Content-Type: text/html; charset=iso-8859-1\r