1<testcase>
2<info>
3# this test is meant to be exactly like 551 but is based on the debug code
4# submitted in bug report #1850730, which sends >64K data and we verify the
5# ioctl rewind callback getting used
6
7<keywords>
8HTTP
9HTTP POST
10POST callback
11HTTP proxy
12HTTP proxy Digest auth
13</keywords>
14</info>
15# Server-side
16<reply>
17
18# as a bonus, ww use an excessive nonce length
19<data>
20HTTP/1.1 407 Authorization Required swsclose
21Server: Apache/1.3.27 (Darwin) PHP/4.1.2
22Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
23Content-Type: text/html; charset=iso-8859-1
24Connection: close
25
26This is not the real page
27</data>
28
29# This is supposed to be returned when the server gets the Digest
30# Authorization: line passed-in from the client
31<data1000>
32HTTP/1.1 200 Things are fine in proxy land swsclose
33Server: Microsoft-IIS/5.0
34Content-Type: text/html; charset=iso-8859-1
35Content-Length: 42
36
37Contents of that page you requested, sir.
38</data1000>
39
40<datacheck>
41APPLICATION: received a CURLIOCMD_RESTARTREAD request
42APPLICATION: ** REWINDING! **
43Contents of that page you requested, sir.
44</datacheck>
45</reply>
46
47# Client-side
48<client>
49<server>
50http
51</server>
52# tool to use
53<tool>
54lib552
55</tool>
56<features>
57!SSPI
58crypto
59proxy
60</features>
61 <name>
62HTTP proxy auth Digest with 70K POST data from read callback
63 </name>
64 <command>
65http://test.remote.example.com/path/552 http://s1lly:pers0n@%HOSTIP:%HTTPPORT/
66</command>
67</client>
68
69# Verify data after the test has been "shot"
70<verify>
71<protocol nonewline="yes">
72POST http://test.remote.example.com/path/552 HTTP/1.1
73Host: test.remote.example.com
74Accept: */*
75Proxy-Connection: Keep-Alive
76Content-Length: 70000
77Content-Type: application/x-www-form-urlencoded
78
79%repeat[7000 x test data%00]%POST http://test.remote.example.com/path/552 HTTP/1.1
80Host: test.remote.example.com
81Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/552", response="be7aedc47d821b6d847c445ded782c43"
82Accept: */*
83Proxy-Connection: Keep-Alive
84Content-Length: 70000
85Content-Type: application/x-www-form-urlencoded
86
87%repeat[7000 x test data%00]%
88</protocol>
89</verify>
90</testcase>
91