From: Daniel Stenberg Date: Tue, 6 Jul 2010 20:50:21 +0000 (+0200) Subject: http: don't enable chunked during authentication negotiations X-Git-Tag: curl-7_21_1~100 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e01cc7737c92897fb8286e3df6392ab434cdced6;p=thirdparty%2Fcurl.git http: don't enable chunked during authentication negotiations As mentioned in bug report #2956968, the HTTP code wouldn't send the first empty chunk during the auth negotiation phase of the HTTP request sending, so the server would wait for data to come and libcurl would wait for data to arrive... I've made the code not enable chunked encoding until the auth negotiation is done and thus this scenario doesn't occur anymore. Reported by: Sidney San Martín Bug: http://curl.haxx.se/bug/view.cgi?id=2956968 --- diff --git a/lib/http.c b/lib/http.c index d510e6a9e5..93a5e3e33a 100644 --- a/lib/http.c +++ b/lib/http.c @@ -2222,7 +2222,10 @@ CURLcode Curl_http(struct connectdata *conn, bool *done) if((conn->protocol&PROT_HTTP) && data->set.upload && (data->set.infilesize == -1)) { - if (use_http_1_1(data, conn)) { + if(conn->bits.authneg) + /* don't enable chunked during auth neg */ + ; + else if(use_http_1_1(data, conn)) { /* HTTP, upload, unknown file size and not HTTP 1.0 */ data->req.upload_chunky = TRUE; }