<testcase> <info> <keywords> HTTP HTTP GET HTTP CONNECT HTTP proxy proxytunnel HTTP proxy Digest auth </keywords> </info> # Server-side <reply> <servercmd> connection-monitor </servercmd> # this is returned first since we get no proxy-auth <data> HTTP/1.1 407 Authorization Required to proxy me my dear Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" And you should ignore this data. </data> # this is returned when we get a GET! <data2> HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Content-Length: 7 Connection: close Content-Type: text/html Funny-head: yesyes daniel </data2> # then this is returned when we get proxy-auth <data1000> HTTP/1.1 200 OK swsbounce Server: no Nice proxy auth sir! </data1000> <datacheck> HTTP/1.1 407 Authorization Required to proxy me my dear Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" HTTP/1.1 200 OK swsbounce Server: no HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Content-Length: 7 Connection: close Content-Type: text/html Funny-head: yesyes daniel </datacheck> </reply> # Client-side <client> <server> http </server> <features> crypto </features> <name> HTTP proxy CONNECT auth Digest </name> <command> http://test.remote.haxx.se:206/path/2060002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user silly:person --proxy-digest --proxytunnel </command> </client> # Verify data after the test has been "shot" <verify> <strip> ^User-Agent: curl/.* </strip> <protocol> CONNECT test.remote.haxx.se:206 HTTP/1.1 Host: test.remote.haxx.se:206 Proxy-Connection: Keep-Alive CONNECT test.remote.haxx.se:206 HTTP/1.1 Host: test.remote.haxx.se:206 Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se:206", response="676e0836f3e1c5b31bf29770ef9d8224" Proxy-Connection: Keep-Alive GET /path/2060002 HTTP/1.1 User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4 Host: test.remote.haxx.se:206 Accept: */* [DISCONNECT] </protocol> </verify> </testcase>