• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP GET
6HTTP CONNECT
7HTTP proxy
8HTTP proxy NTLM auth
9NTLM
10</keywords>
11</info>
12
13# Server-side
14<reply>
15
16# this is returned first since we get no proxy-auth
17<connect1001>
18HTTP/1.1 407 Authorization Required to proxy me my dear
19Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
20Content-Length: 33
21
22And you should ignore this data.
23</connect1001>
24
25# This is supposed to be returned when the server gets the second
26# Authorization: NTLM line passed-in from the client
27<connect1002>
28HTTP/1.1 200 Things are fine in proxy land
29Server: Microsoft-IIS/5.0
30Content-Type: text/html; charset=iso-8859-1
31
32</connect1002>
33
34# this is returned when we get a GET!
35<data2>
36HTTP/1.1 200 OK
37Date: Tue, 09 Nov 2010 14:49:00 GMT
38Content-Length: 7
39Connection: close
40Content-Type: text/html
41Funny-head: yesyes
42
43daniel
44</data2>
45
46# then this is returned when we get proxy-auth
47<data1000>
48HTTP/1.1 200 OK swsbounce
49Server: no
50
51Nice proxy auth sir!
52</data1000>
53
54<datacheck>
55HTTP/1.1 407 Authorization Required to proxy me my dear
56Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
57Content-Length: 33
58
59HTTP/1.1 200 Things are fine in proxy land
60Server: Microsoft-IIS/5.0
61Content-Type: text/html; charset=iso-8859-1
62
63HTTP/1.1 200 OK
64Date: Tue, 09 Nov 2010 14:49:00 GMT
65Content-Length: 7
66Connection: close
67Content-Type: text/html
68Funny-head: yesyes
69
70daniel
71</datacheck>
72</reply>
73
74# Client-side
75<client>
76<server>
77http
78</server>
79<features>
80NTLM
81SSL
82!SSPI
83proxy
84</features>
85<name>
86HTTP proxy CONNECT auth NTLM
87</name>
88<command>
89http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel
90</command>
91</client>
92
93# Verify data after the test has been "shot"
94<verify>
95<protocol>
96CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1
97Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT
98Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
99User-Agent: curl/%VERSION
100Proxy-Connection: Keep-Alive
101
102CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1
103Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT
104Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04=
105User-Agent: curl/%VERSION
106Proxy-Connection: Keep-Alive
107
108GET /path/%TESTNUMBER0002 HTTP/1.1
109Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT
110User-Agent: curl/%VERSION
111Accept: */*
112
113</protocol>
114</verify>
115</testcase>
116