cde5e35d9b
case when 401 or 407 are returned, *IF* no auth credentials have been given. The CURLOPT_FAILONERROR option is not possible to make fool-proof for 401 and 407 cases when auth credentials is given, but we've now covered this somewhat more. You might get some amounts of headers transferred before this situation is detected, like for when a "100-continue" is received as a response to a POST/PUT and a 401 or 407 is received immediately afterwards. Added test 281 to verify this change.
64 lines
904 B
Plaintext
64 lines
904 B
Plaintext
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP PUT
|
|
</keywords>
|
|
</info>
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 100 Continue
|
|
|
|
HTTP/1.1 401 Bad Auth swsclose
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
WWW-Authenticate: Basic Realm=authenticate
|
|
Server: test-server/fake
|
|
</data>
|
|
<datacheck>
|
|
HTTP/1.1 100 Continue
|
|
|
|
</datacheck>
|
|
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP PUT from file with 100 + 401 responses and -f without auth given
|
|
</name>
|
|
<command>
|
|
http://%HOSTIP:%HTTPPORT/we/want/281 -f -T log/test281.txt
|
|
</command>
|
|
<file name="log/test281.txt">
|
|
Weird
|
|
file
|
|
to
|
|
upload
|
|
</file>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<errorcode>
|
|
22
|
|
</errorcode>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
PUT /we/want/281 HTTP/1.1
|
|
Host: 127.0.0.1:%HTTPPORT
|
|
Accept: */*
|
|
Content-Length: 38
|
|
Expect: 100-continue
|
|
|
|
Weird
|
|
file
|
|
to
|
|
upload
|
|
</protocol>
|
|
</verify>
|