| <?xml version="1.0" encoding="US-ASCII"?> |
| <testcase> |
| <info> |
| <keywords> |
| HTTP |
| HTTP GET |
| HTTP proxy |
| HTTP proxy Digest auth |
| multi |
| </keywords> |
| </info> |
| |
| # Server-side |
| <reply> |
| |
| # this is returned first since we get no proxy-auth |
| <data crlf="headers" nocheck="yes"> |
| HTTP/1.1 407 Authorization Required to proxy me my dear |
| Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" |
| Content-Length: 33 |
| |
| And you should ignore this data. |
| </data> |
| |
| # then this is returned when we get proxy-auth |
| <data1000 crlf="headers"> |
| HTTP/1.1 200 OK |
| Content-Length: 21 |
| Server: no |
| |
| Nice proxy auth sir! |
| </data1000> |
| |
| <connect crlf="headers"> |
| HTTP/1.1 401 OK |
| Content-Length: 21 |
| Server: no |
| |
| Denied access. Leave |
| </connect> |
| |
| </reply> |
| |
| # Client-side |
| <client> |
| <server> |
| http |
| https-proxy |
| https |
| </server> |
| # tool is what to use instead of 'curl' |
| <tool> |
| lib%TESTNUMBER |
| </tool> |
| <features> |
| !SSPI |
| crypto |
| proxy |
| digest |
| Debug |
| </features> |
| <setenv> |
| http_proxy=%HOSTIP:%HTTPPORT |
| https_proxy=https://%HOSTIP:%HTTPSPROXYPORT |
| CURL_ENTROPY=99376 |
| </setenv> |
| <name> |
| HTTP proxy auth Digest, then change proxy with env var and do it again |
| </name> |
| <command> |
| http://test.remote.example.com/path/%TESTNUMBER https://another.example.com:%HTTPSPORT/ daniel:monkey123 another:bump456 |
| </command> |
| </client> |
| |
| # Verify data after the test has been "shot" |
| <verify> |
| <protocol crlf="headers"> |
| GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 |
| Host: test.remote.example.com |
| Accept: */* |
| Proxy-Connection: Keep-Alive |
| |
| GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 |
| Host: test.remote.example.com |
| Proxy-Authorization: Digest username="daniel", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="7a1672891aff03248887b1a6674b8096" |
| Accept: */* |
| Proxy-Connection: Keep-Alive |
| |
| </protocol> |
| |
| <proxy crlf="headers"> |
| CONNECT another.example.com:%HTTPSPORT HTTP/1.1 |
| Host: another.example.com:%HTTPSPORT |
| Proxy-Connection: Keep-Alive |
| |
| </proxy> |
| |
| # CONNECT fails |
| <errorcode> |
| 7 |
| </errorcode> |
| </verify> |
| </testcase> |