From d68f215f037febf1850ad6a169d4a69bd9d132a1 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 30 Oct 2009 22:24:48 +0000 Subject: - "Tom" posted a bug report that mentioned how libcurl did wrong when doing a POST using a read callback, with Digest authentication and "Transfer-Encoding: chunked" enforced. I would then cause the first request to be wrongly sent and then basically hang until the server closed the connection. I fixed the problem and added test case 565 to verify it. --- tests/data/test565 | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 tests/data/test565 (limited to 'tests/data/test565') diff --git a/tests/data/test565 b/tests/data/test565 new file mode 100644 index 000000000..896db4061 --- /dev/null +++ b/tests/data/test565 @@ -0,0 +1,104 @@ + + + +HTTP +HTTP POST +HTTP Digest auth + + +# +# Server-side + + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + + + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + +ok + + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + +ok + + + +# Client-side + + +http + +# tool is what to use instead of 'curl' + +lib565 + + + +send HTTP POST using read callback, chunked transfer-encoding and Digest + + +http://%HOSTIP:%HTTPPORT/565 + + + +# +# Verify data after the test has been "shot" + + +POST /565 HTTP/1.1 +Host: 127.0.0.1:8990 +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + + +0 + +POST /565 HTTP/1.1 +Authorization: Digest username="foo", realm="testrealm", nonce="1053604144", uri="/565", response="877424f750af047634dbd94f9933217b" +Host: 127.0.0.1:8990 +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + +3 +one +3 +two +5 +three +1d +and a final longer crap: four +0 + + + + -- cgit v1.2.3