mirror of
https://github.com/curl/curl.git
synced 2024-12-09 06:30:06 +08:00
2ff30d067c
stuff added a few weeks ago. Turns out that if you specify --proxy-ntlm and communicate with a proxy that requires basic authentication, the proxy properly returns a 407, but the failure detection code doesn't realize it should give up, so curl returns with exit code 0. Test case 162 verifies this.
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
# Server-side
|
|
<reply>
|
|
<data1001 nocheck=1>
|
|
HTTP/1.0 407 BAD BOY
|
|
Proxy-Authenticate: Basic realm="Squid proxy-caching web server"
|
|
Server: swsclose
|
|
Content-Type: text/html
|
|
|
|
Even though it's the response code that triggers authentication, we're
|
|
using NTLM and the server isn't, so we should fail. We know the server
|
|
isn't because there's no Proxy-Authorization: NTLM header
|
|
</data1001>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP GET asking for --proxy-ntlm when some other authentication is required
|
|
</name>
|
|
<command>
|
|
http://%HOSTIP:%HOSTPORT/162 --proxy http://%HOSTIP:%HOSTPORT --proxy-user foo:bar --proxy-ntlm --fail
|
|
</command>
|
|
</test>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent: curl/.*
|
|
</strip>
|
|
<protocol>
|
|
GET http://127.0.0.1:8999/162 HTTP/1.1
|
|
Proxy-Authorization: NTLM TlRMTVNTUAABAAAAAgIAAAAAAAAgAAAAAAAAACAAAAA=
|
|
User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)
|
|
Host: 127.0.0.1:8999
|
|
Pragma: no-cache
|
|
Accept: */*
|
|
|
|
</protocol>
|
|
<errorcode>
|
|
22
|
|
</errorcode>
|
|
</verify>
|