<testcase> <info> <keywords> HTTP HTTP GET HTTP proxy HTTP proxy NTLM auth HTTP Digest auth NTLM </keywords> </info> # Server-side <reply> # this is returned first since we get no proxy-auth <data> HTTP/1.1 407 Authorization Required to proxy me my dear swsclose Proxy-Authenticate: NTLM And you should ignore this data. </data> # then this is returned since we get no server-auth <data1000> HTTP/1.1 200 Authorizated fine Content-Length: 27 Welcome to the end station </data1000> <data1001> HTTP/1.1 407 NTLM type-1 received sending back type-2 Server: Microsoft-IIS/5.0 Content-Length: 34 Content-Type: text/html; charset=iso-8859-1 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== This is not the real page either! </data1001> # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client <data1002> HTTP/1.1 401 You now need to authenticate with the host Server: Microsoft-IIS/5.0 WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" Content-Length: 46 Content-Type: text/html; charset=iso-8859-1 We have not authenticated with the server yet </data1002> <datacheck> HTTP/1.1 407 NTLM type-1 received sending back type-2 Server: Microsoft-IIS/5.0 Content-Length: 34 Content-Type: text/html; charset=iso-8859-1 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== HTTP/1.1 401 You now need to authenticate with the host Server: Microsoft-IIS/5.0 WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" Content-Length: 46 Content-Type: text/html; charset=iso-8859-1 HTTP/1.1 200 Authorizated fine Content-Length: 27 Welcome to the end station </datacheck> </reply> # Client-side <client> <server> http </server> <features> NTLM SSL !SSPI proxy </features> <name> HTTP with proxy-requiring-NTLM to site-requiring-Digest </name> <command> http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot </command> </client> # Verify data after the test has been "shot" <verify> <protocol> GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 Host: data.from.server.requiring.digest.hohoho.com Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= User-Agent: curl/%VERSION Accept: */* Proxy-Connection: Keep-Alive GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 Host: data.from.server.requiring.digest.hohoho.com Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= User-Agent: curl/%VERSION Accept: */* Proxy-Connection: Keep-Alive GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 Host: data.from.server.requiring.digest.hohoho.com Authorization: Digest username="digest", realm="r e a l m", nonce="abcdef", uri="/%TESTNUMBER", response="95d48591985a03c4b49cb962aa7bd3e6" User-Agent: curl/%VERSION Accept: */* Proxy-Connection: Keep-Alive </protocol> </verify> </testcase>