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