1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP GET 6HTTP proxy 7HTTP proxy Digest auth 8HTTP Digest auth 9</keywords> 10</info> 11 12# Server-side 13<reply> 14 15# this is returned first since we get no proxy-auth 16<data> 17HTTP/1.1 407 Authorization Required to proxy me my dear swsclose 18Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" 19 20And you should ignore this data. 21</data> 22 23# then this is returned since we get no server-auth 24<data1000> 25HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose 26WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" 27 28you should ignore this data too 29</data1000> 30 31<data1001> 32HTTP/1.1 200 OK swsclose 33Server: no 34Content-Length: 15 35 36Nice auth sir! 37</data1001> 38 39<datacheck> 40HTTP/1.1 407 Authorization Required to proxy me my dear swsclose 41Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" 42 43HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose 44WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" 45 46HTTP/1.1 200 OK swsclose 47Server: no 48Content-Length: 15 49 50Nice auth sir! 51</datacheck> 52</reply> 53 54# Client-side 55<client> 56<server> 57http 58</server> 59<features> 60!SSPI 61crypto 62</features> 63 <name> 64HTTP with proxy-requiring-Digest to site-requiring-Digest 65 </name> 66 <command> 67http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-digest --digest --user digest:alot 68</command> 69</client> 70 71# Verify data after the test has been "shot" 72<verify> 73<strip> 74^User-Agent: curl/.* 75</strip> 76<protocol> 77GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1 78Host: data.from.server.requiring.digest.hohoho.com 79User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3 80Accept: */* 81Proxy-Connection: Keep-Alive 82 83GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1 84Host: data.from.server.requiring.digest.hohoho.com 85Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976" 86User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3 87Accept: */* 88Proxy-Connection: Keep-Alive 89 90GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1 91Host: data.from.server.requiring.digest.hohoho.com 92Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976" 93Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/168", response="ca87f2d768a231e2d637a55698d5c416" 94User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3 95Accept: */* 96Proxy-Connection: Keep-Alive 97 98</protocol> 99</verify> 100</testcase> 101