Loading CHANGES +11 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,17 @@ Changelog Daniel (8 August 2006) - Fixed a flaw in the "Expect: 100-continue" treatment. If you did two POSTs on a persistent connection and allowed the first to use that header, you could not disable it for the second request. Daniel (7 August 2006) - Domenico Andreolfound a quick build error which happened because src/config.h.in was not a proper duplcate of lib/config.h.in which it should've been and this was due to the maketgz script not doing the cp properly. Version 7.15.5 (7 August 2006) Daniel (2 August 2006) Loading RELEASE-NOTES +3 −17 Original line number Diff line number Diff line Loading @@ -9,28 +9,14 @@ Curl and libcurl 7.15.6 Number of known libcurl bindings: 32 Number of contributors: 515 This release includes the following changes: o This release includes the following bugfixes: o Other curl-related news: o New curl mirrors: o o "Expect: 100-continue" disable on second POST on re-used connection o src/config.h.in is fixed This release would not have looked like this without help, code, reports and advice from friends like these: Dan Fandrich, Peter Silva, Arve Knudsen, Michael Wallner, Toshiyuki Maezawa, Ingmar Runge, Ates Goral, David McCreedy, Jari Sundell, Georg Horn, Gisle Vanem, Yang Tse, Michael Jerris, Dan Nelson, Yves Lejeune, Maciej Karpiuk, Mark Lentczner Domenico Andreoli Thanks! (and sorry if I forgot to mention someone) lib/http.c +3 −1 Original line number Diff line number Diff line Loading @@ -1516,6 +1516,8 @@ static CURLcode expect100(struct SessionHandle *data, send_buffer *req_buffer) { CURLcode result = CURLE_OK; data->state.expect100header = FALSE; /* default to false unless it is set to TRUE below */ if((data->set.httpversion != CURL_HTTP_VERSION_1_0) && !checkheaders(data, "Expect:")) { /* if not doing HTTP 1.0 or disabled explicitly, we add a Expect: Loading @@ -1525,7 +1527,7 @@ static CURLcode expect100(struct SessionHandle *data, result = add_bufferf(req_buffer, "Expect: 100-continue\r\n"); if(result == CURLE_OK) data->set.expect100header = TRUE; data->state.expect100header = TRUE; } return result; } Loading lib/transfer.c +2 −2 Original line number Diff line number Diff line Loading @@ -1532,14 +1532,14 @@ CURLcode Curl_readwrite_init(struct connectdata *conn) Thus, we must check if the request has been sent before we set the state info where we wait for the 100-return code */ if (data->set.expect100header && if (data->state.expect100header && (conn->proto.http->sending == HTTPSEND_BODY)) { /* wait with write until we either got 100-continue or a timeout */ k->write_after_100_header = TRUE; k->start100 = k->start; } else { if(data->set.expect100header) if(data->state.expect100header) /* when we've sent off the rest of the headers, we must await a 100-continue */ k->wait100_after_headers = TRUE; Loading lib/urldata.h +2 −1 Original line number Diff line number Diff line Loading @@ -940,6 +940,8 @@ struct UrlState { /* set after initial USER failure, to prevent an authentication loop */ bool ftp_trying_alternative; bool expect100header; /* TRUE if we added Expect: 100-continue */ #ifndef WIN32 /* do FTP line-end conversions on most platforms */ #define CURL_DO_LINEEND_CONV Loading Loading @@ -1135,7 +1137,6 @@ struct UserDefined { bool krb4; /* kerberos4 connection requested */ bool reuse_forbid; /* forbidden to be reused, close after use */ bool reuse_fresh; /* do not re-use an existing connection */ bool expect100header; /* TRUE if we added Expect: 100-continue */ bool ftp_use_epsv; /* if EPSV is to be attempted or not */ bool ftp_use_eprt; /* if EPRT is to be attempted or not */ curl_ftpssl ftp_ssl; /* if AUTH TLS is to be attempted etc */ Loading Loading
CHANGES +11 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,17 @@ Changelog Daniel (8 August 2006) - Fixed a flaw in the "Expect: 100-continue" treatment. If you did two POSTs on a persistent connection and allowed the first to use that header, you could not disable it for the second request. Daniel (7 August 2006) - Domenico Andreolfound a quick build error which happened because src/config.h.in was not a proper duplcate of lib/config.h.in which it should've been and this was due to the maketgz script not doing the cp properly. Version 7.15.5 (7 August 2006) Daniel (2 August 2006) Loading
RELEASE-NOTES +3 −17 Original line number Diff line number Diff line Loading @@ -9,28 +9,14 @@ Curl and libcurl 7.15.6 Number of known libcurl bindings: 32 Number of contributors: 515 This release includes the following changes: o This release includes the following bugfixes: o Other curl-related news: o New curl mirrors: o o "Expect: 100-continue" disable on second POST on re-used connection o src/config.h.in is fixed This release would not have looked like this without help, code, reports and advice from friends like these: Dan Fandrich, Peter Silva, Arve Knudsen, Michael Wallner, Toshiyuki Maezawa, Ingmar Runge, Ates Goral, David McCreedy, Jari Sundell, Georg Horn, Gisle Vanem, Yang Tse, Michael Jerris, Dan Nelson, Yves Lejeune, Maciej Karpiuk, Mark Lentczner Domenico Andreoli Thanks! (and sorry if I forgot to mention someone)
lib/http.c +3 −1 Original line number Diff line number Diff line Loading @@ -1516,6 +1516,8 @@ static CURLcode expect100(struct SessionHandle *data, send_buffer *req_buffer) { CURLcode result = CURLE_OK; data->state.expect100header = FALSE; /* default to false unless it is set to TRUE below */ if((data->set.httpversion != CURL_HTTP_VERSION_1_0) && !checkheaders(data, "Expect:")) { /* if not doing HTTP 1.0 or disabled explicitly, we add a Expect: Loading @@ -1525,7 +1527,7 @@ static CURLcode expect100(struct SessionHandle *data, result = add_bufferf(req_buffer, "Expect: 100-continue\r\n"); if(result == CURLE_OK) data->set.expect100header = TRUE; data->state.expect100header = TRUE; } return result; } Loading
lib/transfer.c +2 −2 Original line number Diff line number Diff line Loading @@ -1532,14 +1532,14 @@ CURLcode Curl_readwrite_init(struct connectdata *conn) Thus, we must check if the request has been sent before we set the state info where we wait for the 100-return code */ if (data->set.expect100header && if (data->state.expect100header && (conn->proto.http->sending == HTTPSEND_BODY)) { /* wait with write until we either got 100-continue or a timeout */ k->write_after_100_header = TRUE; k->start100 = k->start; } else { if(data->set.expect100header) if(data->state.expect100header) /* when we've sent off the rest of the headers, we must await a 100-continue */ k->wait100_after_headers = TRUE; Loading
lib/urldata.h +2 −1 Original line number Diff line number Diff line Loading @@ -940,6 +940,8 @@ struct UrlState { /* set after initial USER failure, to prevent an authentication loop */ bool ftp_trying_alternative; bool expect100header; /* TRUE if we added Expect: 100-continue */ #ifndef WIN32 /* do FTP line-end conversions on most platforms */ #define CURL_DO_LINEEND_CONV Loading Loading @@ -1135,7 +1137,6 @@ struct UserDefined { bool krb4; /* kerberos4 connection requested */ bool reuse_forbid; /* forbidden to be reused, close after use */ bool reuse_fresh; /* do not re-use an existing connection */ bool expect100header; /* TRUE if we added Expect: 100-continue */ bool ftp_use_epsv; /* if EPSV is to be attempted or not */ bool ftp_use_eprt; /* if EPRT is to be attempted or not */ curl_ftpssl ftp_ssl; /* if AUTH TLS is to be attempted etc */ Loading