- Stefan Krause reported a busy-looping case when using the multi interface

and doing CONNECT to a proxy. The app would then busy-loop until the proxy
  completed its response.
This commit is contained in:
Daniel Stenberg 2008-05-09 12:59:24 +00:00
parent 6d5cca5ed0
commit 0510759bc4
3 changed files with 12 additions and 0 deletions

View File

@ -7,6 +7,11 @@
Changelog
Daniel Stenberg (9 May 2008)
- Stefan Krause reported a busy-looping case when using the multi interface
and doing CONNECT to a proxy. The app would then busy-loop until the proxy
completed its response.
Michal Marek (9 May 2008)
- Make Curl_write and it's callees accept a const pointer, in preparation
of tetetest's patch for curl_easy_send()

View File

@ -32,6 +32,7 @@ This release includes the following bugfixes:
o configure detecting debug-enabled c-ares
o microsecond resolution keys for internal splay trees
o krb4 and krb5 ftp segfault
o multi interface busy loop for CONNECT requests
This release includes the following known bugs:

View File

@ -722,6 +722,12 @@ static int waitconnect_getsock(struct connectdata *conn,
return GETSOCK_BLANK;
sock[0] = conn->sock[FIRSTSOCKET];
/* when we've sent a CONNECT to a proxy, we should rather wait for the
socket to become readable to be able to get the response headers */
if(conn->bits.tunnel_connecting)
return GETSOCK_READSOCK(0);
return GETSOCK_WRITESOCK(0);
}