mirror of
https://github.com/moparisthebest/curl
synced 2024-12-23 08:38:49 -05:00
69745aaa45
According to RFC 2616 and RFC 2326 individual protocol elements, like headers and except the actual content, are terminated by using CRLF. Therefore the test data files for these protocols need to contain mixed line-endings if the actual protocol elements use CRLF while the file uses LF.
148 lines
3.2 KiB
Plaintext
148 lines
3.2 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
HTTP Basic auth
|
|
HTTP NTLM auth
|
|
</keywords>
|
|
</info>
|
|
# Server-side
|
|
<reply>
|
|
|
|
<!-- Basic auth -->
|
|
<data100>
|
|
HTTP/1.1 401 Need Basic or NTLM auth
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 29
|
|
WWW-Authenticate: NTLM
|
|
WWW-Authenticate: Basic realm="testrealm"
|
|
|
|
This is a bad password page!
|
|
</data100>
|
|
|
|
<!-- NTML auth -->
|
|
<data200>
|
|
HTTP/1.1 401 Need Basic or NTLM auth (2)
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 27
|
|
WWW-Authenticate: NTLM
|
|
WWW-Authenticate: Basic realm="testrealm"
|
|
|
|
This is not the real page!
|
|
</data200>
|
|
|
|
<data1201>
|
|
HTTP/1.1 401 NTLM intermediate (2)
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 33
|
|
WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
|
|
|
|
This is still not the real page!
|
|
</data1201>
|
|
|
|
<data1202>
|
|
HTTP/1.1 200 Things are fine in server land
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 32
|
|
|
|
Finally, this is the real page!
|
|
</data1202>
|
|
|
|
<datacheck>
|
|
HTTP/1.1 401 Need Basic or NTLM auth
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 29
|
|
WWW-Authenticate: NTLM
|
|
WWW-Authenticate: Basic realm="testrealm"
|
|
|
|
This is a bad password page!
|
|
HTTP/1.1 401 Need Basic or NTLM auth
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 29
|
|
WWW-Authenticate: NTLM
|
|
WWW-Authenticate: Basic realm="testrealm"
|
|
|
|
This is a bad password page!
|
|
HTTP/1.1 401 NTLM intermediate (2)
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 33
|
|
WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
|
|
|
|
HTTP/1.1 200 Things are fine in server land
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
Content-Length: 32
|
|
|
|
Finally, this is the real page!
|
|
</datacheck>
|
|
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<features>
|
|
NTLM
|
|
!SSPI
|
|
</features>
|
|
<server>
|
|
http
|
|
</server>
|
|
<tool>
|
|
libntlmconnect
|
|
</tool>
|
|
|
|
<name>
|
|
NTLM connection mapping
|
|
</name>
|
|
<setenv>
|
|
# we force our own host name, in order to make the test machine independent
|
|
CURL_GETHOSTNAME=curlhost
|
|
# we try to use the LD_PRELOAD hack, if not a debug build
|
|
LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
|
|
</setenv>
|
|
<command>
|
|
http://%HOSTIP:%HTTPPORT/2032
|
|
</command>
|
|
<precheck>
|
|
chkhostname curlhost
|
|
</precheck>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
GET /20320100 HTTP/1.1
|
|
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
|
|
Host: 127.0.0.1:%HTTPPORT
|
|
Accept: */*
|
|
|
|
GET /20320100 HTTP/1.1
|
|
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
|
|
Host: 127.0.0.1:%HTTPPORT
|
|
Accept: */*
|
|
|
|
GET /20320200 HTTP/1.1
|
|
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
|
|
Host: 127.0.0.1:%HTTPPORT
|
|
Accept: */*
|
|
|
|
GET /20320200 HTTP/1.1
|
|
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
|
|
Host: 127.0.0.1:%HTTPPORT
|
|
Accept: */*
|
|
|
|
</protocol>
|
|
</verify>
|
|
</testcase>
|