mirror of
https://github.com/moparisthebest/curl
synced 2024-12-25 09:38:54 -05:00
c50b878c15
A server MUST NOT send any Transfer-Encoding or Content-Length header fields in a 2xx (Successful) response to CONNECT. (RFC 7231 section 4.3.6) Also fixes the three test cases that did this.
81 lines
1.7 KiB
Plaintext
81 lines
1.7 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP POST
|
|
HTTP CONNECT
|
|
HTTP proxy
|
|
HTTP proxy NTLM auth
|
|
</keywords>
|
|
</info>
|
|
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 200 We are fine and cool
|
|
Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2
|
|
Content-Length: 27
|
|
|
|
This is all fine and dandy
|
|
</data>
|
|
|
|
# This is the CONNECT response
|
|
<connect1001>
|
|
HTTP/1.1 200 We are fine and cool
|
|
Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2
|
|
|
|
</connect1001>
|
|
|
|
<datacheck>
|
|
HTTP/1.1 200 We are fine and cool
|
|
Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2
|
|
|
|
HTTP/1.1 200 We are fine and cool
|
|
Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2
|
|
Content-Length: 27
|
|
|
|
This is all fine and dandy
|
|
</datacheck>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
https
|
|
</server>
|
|
<features>
|
|
NTLM
|
|
!SSPI
|
|
</features>
|
|
<name>
|
|
HTTP POST using CONNECT with --proxy-ntlm but no auth is required
|
|
</name>
|
|
<command>
|
|
http://test.a.galaxy.far.far.away.1097:%HTTPPORT/1097 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-ntlm -d "dummy=value" -p
|
|
</command>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent: curl/.*
|
|
</strip>
|
|
<protocol>
|
|
CONNECT test.a.galaxy.far.far.away.1097:%HTTPPORT HTTP/1.1
|
|
Host: test.a.galaxy.far.far.away.1097:%HTTPPORT
|
|
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
|
|
User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS OpenSSL/0.9.8g zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.12 libssh2/1.0.1_CVS
|
|
Proxy-Connection: Keep-Alive
|
|
|
|
POST /1097 HTTP/1.1
|
|
User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS OpenSSL/0.9.8g zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.12 libssh2/1.0.1_CVS
|
|
Host: test.a.galaxy.far.far.away.1097:%HTTPPORT
|
|
Accept: */*
|
|
Content-Length: 0
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
</protocol>
|
|
|
|
</verify>
|
|
</testcase>
|