lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | <testcase> |
| 2 | <info> |
| 3 | <keywords> |
| 4 | HTTP |
| 5 | HTTP GET |
| 6 | HTTP proxy |
| 7 | HTTP proxy NTLM auth |
| 8 | FAILURE |
| 9 | </keywords> |
| 10 | </info> |
| 11 | |
| 12 | # Server-side |
| 13 | <reply> |
| 14 | <data1001 nocheck="yes"> |
| 15 | HTTP/1.0 407 BAD BOY |
| 16 | Proxy-Authenticate: Basic realm="Squid proxy-caching web server" |
| 17 | Server: swsclose |
| 18 | Content-Type: text/html |
| 19 | |
| 20 | Even though it's the response code that triggers authentication, we're |
| 21 | using NTLM and the server isn't, so we should fail. We know the server |
| 22 | isn't because there's no Proxy-Authorization: NTLM header |
| 23 | </data1001> |
| 24 | </reply> |
| 25 | |
| 26 | # Client-side |
| 27 | <client> |
| 28 | <features> |
| 29 | NTLM |
| 30 | !SSPI |
| 31 | </features> |
| 32 | <server> |
| 33 | http |
| 34 | </server> |
| 35 | <name> |
| 36 | HTTP GET asking for --proxy-ntlm when some other authentication is required |
| 37 | </name> |
| 38 | <command> |
| 39 | http://%HOSTIP:%HTTPPORT/162 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-ntlm --fail |
| 40 | </command> |
| 41 | </client> |
| 42 | |
| 43 | # Verify data after the test has been "shot" |
| 44 | <verify> |
| 45 | <strip> |
| 46 | ^User-Agent: curl/.* |
| 47 | </strip> |
| 48 | <protocol> |
| 49 | GET http://%HOSTIP:%HTTPPORT/162 HTTP/1.1
|
| 50 | Host: %HOSTIP:%HTTPPORT
|
| 51 | Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
|
| 52 | User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)
|
| 53 | Accept: */*
|
| 54 | Proxy-Connection: Keep-Alive
|
| 55 |
|
| 56 | </protocol> |
| 57 | <errorcode> |
| 58 | 22 |
| 59 | </errorcode> |
| 60 | </verify> |
| 61 | </testcase> |