1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP POST 6HTTP NTLM auth 7</keywords> 8</info> 9# Server-side 10<reply> 11 12<data> 13HTTP/1.1 200 Thanks for this! swsclose 14Content-Length: 25 15 16This is the final page ! 17</data> 18 19<data1001> 20HTTP/1.1 401 Now gimme that second request of crap 21Server: Microsoft-IIS/5.0 22Content-Type: text/html; charset=iso-8859-1 23Content-Length: 34 24WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 25 26This is not the real page either! 27</data1001> 28 29# This is supposed to be returned when the server gets the second 30# Authorization: NTLM line passed-in from the client 31<data1002> 32HTTP/1.1 302 Thanks for this, but we want to redir you! 33Server: Microsoft-IIS/5.0 34Content-Type: text/html; charset=iso-8859-1 35Location: /1100 36Content-Length: 34 37 38This is not the real page either! 39</data1002> 40 41<datacheck> 42HTTP/1.1 401 Now gimme that second request of crap 43Server: Microsoft-IIS/5.0 44Content-Type: text/html; charset=iso-8859-1 45Content-Length: 34 46WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 47 48HTTP/1.1 302 Thanks for this, but we want to redir you! 49Server: Microsoft-IIS/5.0 50Content-Type: text/html; charset=iso-8859-1 51Location: /1100 52Content-Length: 34 53 54HTTP/1.1 200 Thanks for this! swsclose 55Content-Length: 25 56 57This is the final page ! 58</datacheck> 59 60</reply> 61 62# Client-side 63<client> 64<features> 65NTLM 66</features> 67<server> 68http 69</server> 70 <name> 71HTTP POST with NTLM authorization and following a 302 redirect 72 </name> 73 <setenv> 74# we force our own host name, in order to make the test machine independent 75CURL_GETHOSTNAME=curlhost 76# we try to use the LD_PRELOAD hack, if not a debug build 77LD_PRELOAD=%PWD/libtest/.libs/libhostname.so 78 </setenv> 79 <command> 80http://%HOSTIP:%HTTPPORT/1100 -u testuser:testpass --ntlm -L -d "stuff to send away" 81</command> 82<precheck> 83chkhostname curlhost 84</precheck> 85</client> 86 87# Verify data after the test has been "shot" 88<verify> 89<strip> 90^User-Agent:.* 91</strip> 92<protocol> 93POST /1100 HTTP/1.1 94Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 95User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 96Host: %HOSTIP:%HTTPPORT 97Accept: */* 98Content-Length: 0 99Content-Type: application/x-www-form-urlencoded 100 101POST /1100 HTTP/1.1 102Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoKBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyY3VybGhvc3Q= 103User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 104Host: %HOSTIP:%HTTPPORT 105Accept: */* 106Content-Length: 18 107Content-Type: application/x-www-form-urlencoded 108 109stuff to send awayGET /1100 HTTP/1.1 110User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS GnuTLS/2.6.6 zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.14 libssh2/1.1 111Host: %HOSTIP:%HTTPPORT 112Accept: */* 113 114</protocol> 115</verify> 116</testcase> 117