Giancarlo Formicuccia reported and fixed a problem with a closed connection

to a proxy during CONNECT auth negotiation.
This commit is contained in:
Daniel Stenberg 2007-07-10 22:31:13 +00:00
parent 19631f5d5f
commit dc2c70be07
3 changed files with 9 additions and 2 deletions

View File

@ -6,6 +6,10 @@
Changelog Changelog
Daniel S (11 July 2007)
- Giancarlo Formicuccia reported and fixed a problem with a closed connection
to a proxy during CONNECT auth negotiation.
Dan F (10 July 2007) Dan F (10 July 2007)
- Fixed a curl memory leak reported by Song Ma with a modified version - Fixed a curl memory leak reported by Song Ma with a modified version
of the patch he suggested. Added his test case as test289 to verify. of the patch he suggested. Added his test case as test289 to verify.

View File

@ -16,6 +16,7 @@ This release includes the following changes:
This release includes the following bugfixes: This release includes the following bugfixes:
o Test cases 31, 46, 61, 506, 517 now work in time zones that use leap seconds o Test cases 31, 46, 61, 506, 517 now work in time zones that use leap seconds
o problem with closed proxy connection during HTTP CONNECT auth negotiation
This release includes the following known bugs: This release includes the following known bugs:
@ -32,7 +33,6 @@ New curl mirrors:
This release would not have looked like this without help, code, reports and This release would not have looked like this without help, code, reports and
advice from friends like these: advice from friends like these:
Dan Fandrich, Song Ma, Daniel Black Dan Fandrich, Song Ma, Daniel Black, Giancarlo Formicuccia
Thanks! (and sorry if I forgot to mention someone) Thanks! (and sorry if I forgot to mention someone)

View File

@ -1398,6 +1398,9 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
else if(Curl_compareheader(line_start, else if(Curl_compareheader(line_start,
"Connection:", "close")) "Connection:", "close"))
closeConnection = TRUE; closeConnection = TRUE;
else if(Curl_compareheader(line_start,
"Proxy-Connection:", "close"))
closeConnection = TRUE;
else if(2 == sscanf(line_start, "HTTP/1.%d %d", else if(2 == sscanf(line_start, "HTTP/1.%d %d",
&subversion, &subversion,
&k->httpcode)) { &k->httpcode)) {