1 <testcase> 2 <info> 3 # This test is a copy of test 67, modified to use a HTTP proxy. 4 <keywords> 5 HTTP 6 HTTP GET 7 HTTP NTLM auth 8 HTTP proxy 9 </keywords> 10 </info> 11 # Server-side 12 <reply> 13 14 <!-- no <data> in this test since we have NTLM from the start 15 16 This is supposed to be returned when the server gets a first 17 Authorization: NTLM line passed-in from the client --> 18 19 <data1001> 20 HTTP/1.1 401 Now gimme that second request of crap 21 Server: Microsoft-IIS/5.0 22 Content-Type: text/html; charset=iso-8859-1 23 Content-Length: 34 24 WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 25 26 This 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> 32 HTTP/1.1 200 Things are fine in server land swsclose 33 Server: Microsoft-IIS/5.0 34 Content-Type: text/html; charset=iso-8859-1 35 Content-Length: 32 36 37 Finally, this is the real page! 38 </data1002> 39 40 <datacheck> 41 HTTP/1.1 401 Now gimme that second request of crap 42 Server: Microsoft-IIS/5.0 43 Content-Type: text/html; charset=iso-8859-1 44 Content-Length: 34 45 WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 46 47 HTTP/1.1 200 Things are fine in server land swsclose 48 Server: Microsoft-IIS/5.0 49 Content-Type: text/html; charset=iso-8859-1 50 Content-Length: 32 51 52 Finally, this is the real page! 53 </datacheck> 54 55 </reply> 56 57 # Client-side 58 <client> 59 <features> 60 NTLM 61 !SSPI 62 debug 63 </features> 64 <server> 65 http 66 </server> 67 <name> 68 HTTP with server NTLM authorization using a proxy 69 </name> 70 <setenv> 71 # we force our own host name, in order to make the test machine independent 72 CURL_GETHOSTNAME=curlhost 73 # we try to use the LD_PRELOAD hack, if not a debug build 74 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so 75 </setenv> 76 <command> 77 http://%HOSTIP:%HTTPPORT/1215 -u testuser:testpass --ntlm --proxy http://%HOSTIP:%HTTPPORT 78 </command> 79 <precheck> 80 chkhostname curlhost 81 </precheck> 82 </client> 83 84 # Verify data after the test has been "shot" 85 <verify> 86 <strip> 87 ^User-Agent:.* 88 </strip> 89 <protocol> 90 GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1 91 Host: %HOSTIP:%HTTPPORT 92 Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 93 User-Agent: curl/7.30.0-DEV 94 Accept: */* 95 96 GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1 97 Host: %HOSTIP:%HTTPPORT 98 Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== 99 User-Agent: curl/7.30.0-DEV 100 Accept: */* 101 102 </protocol> 103 </verify> 104 </testcase> 105