• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP GET
6HTTP Negotiate auth (stub ntlm)
7</keywords>
8</info>
9# Server-side
10<reply>
11<!-- First request, expect 401 Negotiate -->
12<data>
13HTTP/1.1 401 Authorization Required
14Server: Microsoft-IIS/7.0
15Content-Type: text/html; charset=iso-8859-1
16WWW-Authenticate: Negotiate
17Content-Length: 13
18
19Not yet sir!
20</data>
21<!-- Second request, expect 401 (ntlm challenge) -->
22<data1>
23HTTP/1.1 401 Authorization Required
24Server: Microsoft-IIS/7.0
25Content-Type: text/html; charset=iso-8859-1
26WWW-Authenticate: Negotiate Qw==
27Content-Length: 19
28
29Still not yet sir!
30</data1>
31<!-- Third request, expect success  -->
32<data2>
33HTTP/1.1 200 Things are fine in server land
34Server: Microsoft-IIS/7.0
35Content-Type: text/html; charset=iso-8859-1
36WWW-Authenticate: Negotiate RA==
37Content-Length: 15
38
39Nice auth sir!
40</data2>
41<datacheck>
42HTTP/1.1 401 Authorization Required
43Server: Microsoft-IIS/7.0
44Content-Type: text/html; charset=iso-8859-1
45WWW-Authenticate: Negotiate
46Content-Length: 13
47
48HTTP/1.1 401 Authorization Required
49Server: Microsoft-IIS/7.0
50Content-Type: text/html; charset=iso-8859-1
51WWW-Authenticate: Negotiate Qw==
52Content-Length: 19
53
54HTTP/1.1 200 Things are fine in server land
55Server: Microsoft-IIS/7.0
56Content-Type: text/html; charset=iso-8859-1
57WWW-Authenticate: Negotiate RA==
58Content-Length: 15
59
60Nice auth sir!
61</datacheck>
62</reply>
63
64# Client-side
65<client>
66<server>
67http
68</server>
69<name>
70HTTP Negotiate authentication (stub ntlm)
71</name>
72<features>
73GSS-API
74ld_preload
75!debug
76</features>
77<setenv>
78LD_PRELOAD=%PWD/libtest/.libs/libstubgss.so
79CURL_STUB_GSS_CREDS="NTLM_Alice"
80</setenv>
81<command>
82-u: --negotiate http://%HOSTIP:%HTTPPORT/2057
83</command>
84</client>
85
86# Verify data after the test has been "shot"
87<verify>
88<strip>
89^User-Agent:.*
90</strip>
91<protocol>
92GET /2057 HTTP/1.1
93Host: %HOSTIP:%HTTPPORT
94Accept: */*
95
96GET /2057 HTTP/1.1
97Host: %HOSTIP:%HTTPPORT
98Authorization: Negotiate Ik5UTE1fQWxpY2UiOkhUVFBAMTI3LjAuMC4xOjI6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQ==
99Accept: */*
100
101GET /2057 HTTP/1.1
102Host: %HOSTIP:%HTTPPORT
103Authorization: Negotiate Ik5UTE1fQWxpY2UiOkhUVFBAMTI3LjAuMC4xOjM6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQ==
104Accept: */*
105
106</protocol>
107</verify>
108</testcase>
109