1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP GET 6HTTP proxy 7HTTP proxy NTLM auth 8--proxy-anyauth 9</keywords> 10</info> 11 12# Server-side 13<reply> 14 15<data> 16HTTP/1.1 407 Authorization Required swsclose 17Server: Apache/1.3.27 (Darwin) PHP/4.1.2 18Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" 19Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" 20Proxy-Authenticate: NTLM 21Content-Type: text/html; charset=iso-8859-1 22Connection: close 23 24This is not the real page 25</data> 26 27# this is returned first since we get no proxy-auth 28<data1001> 29HTTP/1.1 407 Authorization Required to proxy me my dear 30Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 31Content-Length: 34 32 33Hey you, authenticate or go away! 34</data1001> 35 36# This is supposed to be returned when the server gets the second 37# Authorization: NTLM line passed-in from the client 38<data1002> 39HTTP/1.1 200 Things are fine in proxy land swsclose 40Server: Microsoft-IIS/5.0 41Content-Type: text/html; charset=iso-8859-1 42Content-Length: 42 43 44Contents of that page you requested, sir. 45</data1002> 46 47<datacheck> 48HTTP/1.1 407 Authorization Required swsclose 49Server: Apache/1.3.27 (Darwin) PHP/4.1.2 50Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" 51Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" 52Proxy-Authenticate: NTLM 53Content-Type: text/html; charset=iso-8859-1 54Connection: close 55 56HTTP/1.1 407 Authorization Required to proxy me my dear 57Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 58Content-Length: 34 59 60HTTP/1.1 200 Things are fine in proxy land swsclose 61Server: Microsoft-IIS/5.0 62Content-Type: text/html; charset=iso-8859-1 63Content-Length: 42 64 65Contents of that page you requested, sir. 66</datacheck> 67</reply> 68 69# Client-side 70<client> 71<server> 72http 73</server> 74<features> 75NTLM 76!SSPI 77debug 78</features> 79 <name> 80HTTP POST with --proxy-anyauth, picking NTLM 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/243 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-anyauth -d "postit" 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: curl/.* 100</strip> 101<protocol nonewline="yes"> 102POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1 103Host: %HOSTIP:%HTTPPORT 104User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13 105Accept: */* 106Content-Length: 6 107Content-Type: application/x-www-form-urlencoded 108 109postitPOST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1 110Host: %HOSTIP:%HTTPPORT 111Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 112User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13 113Accept: */* 114Content-Length: 0 115Content-Type: application/x-www-form-urlencoded 116 117POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1 118Host: %HOSTIP:%HTTPPORT 119Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== 120User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13 121Accept: */* 122Content-Length: 6 123Content-Type: application/x-www-form-urlencoded 124 125postit 126</protocol> 127</verify> 128</testcase> 129