• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP POST
6HTTP proxy
7HTTP proxy NTLM auth
8</keywords>
9</info>
10
11# Server-side
12<reply>
13
14# this is returned first since we get no proxy-auth
15<data1001>
16HTTP/1.1 407 Authorization Required to proxy me my dear
17Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
18Content-Length: 34
19
20Hey you, authenticate or go away!
21</data1001>
22
23# This is supposed to be returned when the server gets the second
24# Authorization: NTLM line passed-in from the client
25<data1002>
26HTTP/1.1 200 Things are fine in proxy land swsclose
27Server: Microsoft-IIS/5.0
28Content-Type: text/html; charset=iso-8859-1
29Content-Length: 42
30
31Contents of that page you requested, sir.
32</data1002>
33
34<datacheck>
35HTTP/1.1 407 Authorization Required to proxy me my dear
36Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
37Content-Length: 34
38
39HTTP/1.1 200 Things are fine in proxy land swsclose
40Server: Microsoft-IIS/5.0
41Content-Type: text/html; charset=iso-8859-1
42Content-Length: 42
43
44Contents of that page you requested, sir.
45</datacheck>
46</reply>
47
48# Client-side
49<client>
50<server>
51http
52</server>
53<features>
54NTLM
55!SSPI
56debug
57</features>
58 <name>
59HTTP proxy-auth NTLM and then POST
60 </name>
61 <setenv>
62# we force our own host name, in order to make the test machine independent
63CURL_GETHOSTNAME=curlhost
64# we try to use the LD_PRELOAD hack, if not a debug build
65LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
66 </setenv>
67 <command>
68http://%HOSTIP:%HTTPPORT/239 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm -d "postit"
69</command>
70<precheck>
71chkhostname curlhost
72</precheck>
73</client>
74
75# Verify data after the test has been "shot"
76<verify>
77<strip>
78^User-Agent: curl/.*
79</strip>
80<protocol nonewline="yes">
81POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1
82Host: %HOSTIP:%HTTPPORT
83Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
84User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
85Accept: */*
86Proxy-Connection: Keep-Alive
87Content-Length: 0
88Content-Type: application/x-www-form-urlencoded
89
90POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1
91Host: %HOSTIP:%HTTPPORT
92Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
93User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
94Accept: */*
95Proxy-Connection: Keep-Alive
96Content-Length: 6
97Content-Type: application/x-www-form-urlencoded
98
99postit
100</protocol>
101</verify>
102</testcase>
103