79ab183f08612f713f79a4dead3dd007498590dc
[platform/upstream/curl.git] / tests / data / test265
1 <testcase>
2 <info>
3 <keywords>
4 HTTP
5 HTTP POST
6 HTTP CONNECT
7 HTTP proxy
8 HTTP proxy NTLM auth
9 </keywords>
10 </info>
11
12 # Server-side
13 <reply>
14
15 # this is returned first since we get no proxy-auth
16 <connect1001>
17 HTTP/1.0 407 Authorization Required to proxy me my dear\r
18 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==\r
19 Content-Length: 1033\r
20 \r
21 And you should ignore this data.
22 QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQz
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>
28 HTTP/1.1 200 Things are fine in proxy land\r
29 Server: Microsoft-IIS/5.0\r
30 Content-Type: text/html; charset=iso-8859-1\r
31 \r
32 </connect1002>
33
34 # this is returned when we get a GET!
35 <data2>
36 HTTP/1.1 200 OK
37 Date: Thu, 09 Nov 2010 14:49:00 GMT
38 Content-Length: 7
39 Connection: close
40 Content-Type: text/html
41 Funny-head: yesyes
42
43 daniel
44 </data2>
45
46 # then this is returned when we get proxy-auth
47 <data1000>
48 HTTP/1.1 200 OK swsbounce\r
49 Server: no
50 \r
51 Nice proxy auth sir!
52 </data1000>
53
54 <datacheck>
55 HTTP/1.0 407 Authorization Required to proxy me my dear\r
56 Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==\r
57 Content-Length: 1033\r
58 \r
59 HTTP/1.1 200 Things are fine in proxy land\r
60 Server: Microsoft-IIS/5.0\r
61 Content-Type: text/html; charset=iso-8859-1\r
62 \r
63 HTTP/1.1 200 OK
64 Date: Thu, 09 Nov 2010 14:49:00 GMT
65 Content-Length: 7
66 Connection: close
67 Content-Type: text/html
68 Funny-head: yesyes
69
70 daniel
71 </datacheck>
72 </reply>
73
74 # Client-side
75 <client>
76 <server>
77 http
78 </server>
79 <features>
80 NTLM
81 !SSPI
82 debug
83 </features>
84  <name>
85 HTTP proxy CONNECT auth NTLM and then POST, response-body in the 407
86  </name>
87  <setenv>
88 # we force our own host name, in order to make the test machine independent
89 CURL_GETHOSTNAME=curlhost
90 # we try to use the LD_PRELOAD hack, if not a debug build
91 LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
92  </setenv>
93  <command>
94 http://test.remote.example.com.265:%HTTPPORT/path/2650002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit"
95 </command>
96 <precheck>
97 chkhostname curlhost
98 </precheck>
99 </client>
100
101 # Verify data after the test has been "shot"
102 <verify>
103 <strip>
104 ^User-Agent: curl/.*
105 </strip>
106 <protocol nonewline="yes">
107 CONNECT test.remote.example.com.265:%HTTPPORT HTTP/1.1\r
108 Host: test.remote.example.com.265:%HTTPPORT\r
109 Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=\r
110 \r
111 CONNECT test.remote.example.com.265:%HTTPPORT HTTP/1.1\r
112 Host: test.remote.example.com.265:%HTTPPORT\r
113 Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==\r
114 \r
115 POST /path/2650002 HTTP/1.1\r
116 User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4\r
117 Host: test.remote.example.com.265:%HTTPPORT\r
118 Accept: */*\r
119 Content-Length: 6\r
120 Content-Type: application/x-www-form-urlencoded\r
121 \r
122 postit
123 </protocol>
124 </verify>
125 </testcase>