1<testcase>
2<info>
3# this test is meant to be exactly like 547 but using Digest instead of NTLM
4<keywords>
5HTTP
6HTTP POST
7POST callback
8HTTP proxy
9HTTP proxy Digest auth
10</keywords>
11</info>
12
13# Server-side
14<reply>
15
16# as a bonus, ww use an excessive nonce length
17<data>
18HTTP/1.1 407 Authorization Required swsclose
19Server: Apache/1.3.27 (Darwin) PHP/4.1.2
20Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
21Content-Type: text/html; charset=iso-8859-1
22Connection: close
23
24This is not the real page
25</data>
26
27# This is supposed to be returned when the server gets the Digest
28# Authorization: line passed-in from the client
29<data1000>
30HTTP/1.1 200 Things are fine in proxy land swsclose
31Server: Microsoft-IIS/5.0
32Content-Type: text/html; charset=iso-8859-1
33Content-Length: 42
34
35Contents of that page you requested, sir.
36</data1000>
37
38<datacheck>
39HTTP/1.1 407 Authorization Required swsclose
40Server: Apache/1.3.27 (Darwin) PHP/4.1.2
41Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
42Content-Type: text/html; charset=iso-8859-1
43Connection: close
44
45HTTP/1.1 200 Things are fine in proxy land swsclose
46Server: Microsoft-IIS/5.0
47Content-Type: text/html; charset=iso-8859-1
48Content-Length: 42
49
50Contents of that page you requested, sir.
51</datacheck>
52</reply>
53
54# Client-side
55<client>
56<server>
57http
58</server>
59# tool to use
60<tool>
61lib547
62</tool>
63<features>
64</features>
65 <name>
66HTTP proxy auth Digest with POST data from read callback
67 </name>
68 <command>
69http://test.remote.example.com/path/551 http://%HOSTIP:%HTTPPORT s1lly:pers0n
70</command>
71</client>
72
73# Verify data after the test has been "shot"
74<verify>
75<strip>
76^User-Agent: curl/.*
77</strip>
78<protocol>
79POST http://test.remote.example.com/path/551 HTTP/1.1
80Host: test.remote.example.com
81Accept: */*
82Proxy-Connection: Keep-Alive
83Content-Length: 36
84Content-Type: application/x-www-form-urlencoded
85
86this is the blurb we want to upload
87POST http://test.remote.example.com/path/551 HTTP/1.1
88Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/551", response="3325240726fbdaf1e61f3a0dd40b930c"
89Host: test.remote.example.com
90Accept: */*
91Proxy-Connection: Keep-Alive
92Content-Length: 36
93Content-Type: application/x-www-form-urlencoded
94
95this is the blurb we want to upload
96</protocol>
97</verify>
98</testcase>
99