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