1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP GET
6HTTP Basic auth
7HTTP NTLM auth
8pipelining
9flaky
10</keywords>
11</info>
12# Server-side
13<reply>
14
15<!-- Basic auth -->
16<data100>
17HTTP/1.1 401 Need Basic or NTLM auth
18Server: Microsoft-IIS/5.0
19Content-Type: text/html; charset=iso-8859-1
20Content-Length: 29
21WWW-Authenticate: NTLM
22WWW-Authenticate: Basic realm="testrealm"
23
24This is a bad password page!
25</data100>
26
27<!-- NTLM auth -->
28<data200>
29HTTP/1.1 401 Need Basic or NTLM auth (2)
30Server: Microsoft-IIS/5.0
31Content-Type: text/html; charset=iso-8859-1
32Content-Length: 27
33WWW-Authenticate: NTLM
34WWW-Authenticate: Basic realm="testrealm"
35
36This is not the real page!
37</data200>
38
39<data1201>
40HTTP/1.1 401 NTLM intermediate (2)
41Server: Microsoft-IIS/5.0
42Content-Type: text/html; charset=iso-8859-1
43Content-Length: 33
44WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
45
46This is still not the real page!
47</data1201>
48
49<data1202>
50HTTP/1.1 200 Things are fine in server land
51Server: Microsoft-IIS/5.0
52Content-Type: text/html; charset=iso-8859-1
53Content-Length: 32
54
55Finally, this is the real page!
56</data1202>
57
58<datacheck>
59Data connection 0: 228
60Data connection 1: 228
61Data connection 2: 402
62</datacheck>
63
64</reply>
65
66# Client-side
67<client>
68<features>
69NTLM
70!SSPI
71</features>
72<server>
73http
74</server>
75<tool>
76lib2033
77</tool>
78
79 <name>
80NTLM connection mapping, pipelining enabled
81 </name>
82 <setenv>
83# we force our own host name, in order to make the test machine independent
84CURL_GETHOSTNAME=curlhost
85# we try to use the LD_PRELOAD hack, if not a debug build
86LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
87 </setenv>
88 <command>
89http://%HOSTIP:%HTTPPORT/2032
90</command>
91<precheck>
92chkhostname curlhost
93</precheck>
94</client>
95
96# Verify data after the test has been "shot"
97<verify>
98<strip>
99^User-Agent:.*
100</strip>
101<protocol>
102GET /20320100 HTTP/1.1
103Host: 127.0.0.1:%HTTPPORT
104Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
105Accept: */*
106
107GET /20320100 HTTP/1.1
108Host: 127.0.0.1:%HTTPPORT
109Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
110Accept: */*
111
112GET /20320200 HTTP/1.1
113Host: 127.0.0.1:%HTTPPORT
114Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
115Accept: */*
116
117GET /20320200 HTTP/1.1
118Host: 127.0.0.1:%HTTPPORT
119Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
120Accept: */*
121
122</protocol>
123</verify>
124</testcase>
125