1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP POST 6POST callback 7HTTP proxy 8HTTP proxy NTLM auth 9NTLM 10</keywords> 11</info> 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: Negotiate 19Proxy-Authenticate: NTLM 20Content-Type: text/html; charset=iso-8859-1 21Connection: close 22 23This is not the real page 24</data> 25 26# this is returned first since we get no proxy-auth 27<data1001> 28HTTP/1.1 407 Authorization Required to proxy me my dear 29Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 30Content-Length: 34 31 32Hey you, authenticate or go away! 33</data1001> 34 35# This is supposed to be returned when the server gets the second 36# Authorization: NTLM line passed-in from the client 37<data1002> 38HTTP/1.1 200 Things are fine in proxy land swsclose 39Server: Microsoft-IIS/5.0 40Content-Type: text/html; charset=iso-8859-1 41Content-Length: 42 42 43Contents of that page you requested, sir. 44</data1002> 45 46<datacheck> 47HTTP/1.1 407 Authorization Required swsclose 48Server: Apache/1.3.27 (Darwin) PHP/4.1.2 49Proxy-Authenticate: Negotiate 50Proxy-Authenticate: NTLM 51Content-Type: text/html; charset=iso-8859-1 52Connection: close 53 54HTTP/1.1 407 Authorization Required to proxy me my dear 55Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== 56Content-Length: 34 57 58HTTP/1.1 200 Things are fine in proxy land swsclose 59Server: Microsoft-IIS/5.0 60Content-Type: text/html; charset=iso-8859-1 61Content-Length: 42 62 63Contents of that page you requested, sir. 64</datacheck> 65</reply> 66 67# Client-side 68<client> 69<server> 70http 71</server> 72# tool to use 73<tool> 74lib%TESTNUMBER 75</tool> 76<features> 77NTLM 78SSL 79!SSPI 80proxy 81</features> 82<name> 83HTTP proxy offers Negotiate+NTLM, use only NTLM 84</name> 85<command> 86http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT 87</command> 88</client> 89 90# Verify data after the test has been "shot" 91<verify> 92 93<protocol> 94GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 95Host: test.remote.example.com 96Accept: */* 97Proxy-Connection: Keep-Alive 98 99GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 100Host: test.remote.example.com 101Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 102Accept: */* 103Proxy-Connection: Keep-Alive 104 105GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 106Host: test.remote.example.com 107Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAAAgACAHAAAAALAAsAcgAAAAAAAAAAAAAAhoIBAAQt1KW5CgG4YdWWcfXyfXBz1ZMCzYp37xYjBiAizmw58O6eQS7yR66eqYGWeSwl9W1lV09SS1NUQVRJT04= 108Accept: */* 109Proxy-Connection: Keep-Alive 110 111</protocol> 112</verify> 113</testcase> 114