1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP GET 6HTTP Basic auth 7HTTP NTLM auth 8flaky 9</keywords> 10</info> 11# Server-side 12<reply> 13 14<!-- Basic auth --> 15<data100> 16HTTP/1.1 401 Need Basic or NTLM auth 17Server: Microsoft-IIS/5.0 18Content-Type: text/html; charset=iso-8859-1 19Content-Length: 29 20WWW-Authenticate: NTLM 21WWW-Authenticate: Basic realm="testrealm" 22 23This is a bad password page! 24</data100> 25 26<!-- NTLM auth --> 27<data200> 28HTTP/1.1 401 Need Basic or NTLM auth (2) 29Server: Microsoft-IIS/5.0 30Content-Type: text/html; charset=iso-8859-1 31Content-Length: 27 32WWW-Authenticate: NTLM 33WWW-Authenticate: Basic realm="testrealm" 34 35This is not the real page! 36</data200> 37 38<data1201> 39HTTP/1.1 401 NTLM intermediate (2) 40Server: Microsoft-IIS/5.0 41Content-Type: text/html; charset=iso-8859-1 42Content-Length: 33 43WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= 44 45This is still not the real page! 46</data1201> 47 48<data1202> 49HTTP/1.1 200 Things are fine in server land 50Server: Microsoft-IIS/5.0 51Content-Type: text/html; charset=iso-8859-1 52Content-Length: 32 53 54Finally, this is the real page! 55</data1202> 56 57<datacheck> 58Data connection 0: 228 59Data connection 1: 228 60Data connection 2: 402 61</datacheck> 62 63</reply> 64 65# Client-side 66<client> 67<features> 68NTLM 69SSL 70!SSPI 71</features> 72<server> 73http 74</server> 75<tool> 76libntlmconnect 77</tool> 78 79 <name> 80NTLM connection mapping 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<protocol> 99GET /20320100 HTTP/1.1 100Host: %HOSTIP:%HTTPPORT 101Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M= 102Accept: */* 103 104GET /20320100 HTTP/1.1 105Host: %HOSTIP:%HTTPPORT 106Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M= 107Accept: */* 108 109GET /20320200 HTTP/1.1 110Host: %HOSTIP:%HTTPPORT 111Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 112Accept: */* 113 114GET /20320200 HTTP/1.1 115Host: %HOSTIP:%HTTPPORT 116Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q= 117Accept: */* 118 119</protocol> 120</verify> 121</testcase> 122