mirror of
https://github.com/moparisthebest/curl
synced 2024-10-31 15:45:12 -04:00
5d9fc28fa7
A) Normal non-proxy HTTP: - no more "Pragma: no-cache" (this only makes sense to proxies) B) Non-CONNECT HTTP request over proxy: - "Pragma: no-cache" is used (like before) - "Proxy-Connection: Keep-alive" (for older style 1.0-proxies) C) CONNECT HTTP request over proxy: - "Host: [name]:[port]" - "Proxy-Connection: Keep-alive"
102 lines
2.7 KiB
Plaintext
102 lines
2.7 KiB
Plaintext
# Server-side
|
|
<reply>
|
|
|
|
# this is returned first since we get no proxy-auth
|
|
<data1001>
|
|
HTTP/1.1 407 Authorization Required to proxy me my dear
|
|
Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
|
|
|
|
And you should ignore this data.
|
|
</data1001>
|
|
|
|
# This is supposed to be returned when the server gets the second
|
|
# Authorization: NTLM line passed-in from the client
|
|
<data1002>
|
|
HTTP/1.1 200 Things are fine in proxy land
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
|
|
</data1002>
|
|
|
|
# this is returned when we get a GET!
|
|
<data2>
|
|
HTTP/1.1 200 OK
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Content-Length: 7
|
|
Connection: close
|
|
Content-Type: text/html
|
|
Funny-head: yesyes
|
|
|
|
daniel
|
|
</data2>
|
|
|
|
# then this is returned when we get proxý-auth
|
|
<data1000>
|
|
HTTP/1.1 200 OK swsbounce
|
|
Server: no
|
|
|
|
Nice proxy auth sir!
|
|
</data1000>
|
|
|
|
<datacheck>
|
|
HTTP/1.1 407 Authorization Required to proxy me my dear
|
|
Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
|
|
|
|
HTTP/1.1 200 Things are fine in proxy land
|
|
Server: Microsoft-IIS/5.0
|
|
Content-Type: text/html; charset=iso-8859-1
|
|
|
|
HTTP/1.1 200 OK
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Content-Length: 7
|
|
Connection: close
|
|
Content-Type: text/html
|
|
Funny-head: yesyes
|
|
|
|
daniel
|
|
</datacheck>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<features>
|
|
NTLM
|
|
</features>
|
|
<name>
|
|
HTTP proxy CONNECT auth NTLM and then POST
|
|
</name>
|
|
<command>
|
|
http://test.remote.server.com:213/path/2130002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user silly:person --proxy-ntlm --proxytunnel -d "postit"
|
|
</command>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent: curl/.*
|
|
</strip>
|
|
<protocol nonewline=yes>
|
|
CONNECT test.remote.server.com:213 HTTP/1.0
|
|
Host: test.remote.server.com:213
|
|
Proxy-Authorization: NTLM TlRMTVNTUAABAAAAAgIAAAAAAAAgAAAAAAAAACAAAAA=
|
|
Proxy-Connection: Keep-Alive
|
|
|
|
CONNECT test.remote.server.com:213 HTTP/1.0
|
|
Host: test.remote.server.com:213
|
|
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEUAAAAYABgAXQAAAAAAAABAAAAABQAFAEAAAAAAAAAARQAAAAAAAAB1AAAAAYIAAHNpbGx5oB5CPMq0JDu5tbxLow3sHn3jfoYDE+7QJVE7DA0GyDEwvj2BxsBctP9tT4fnCtL1
|
|
Proxy-Connection: Keep-Alive
|
|
|
|
POST /path/2130002 HTTP/1.1
|
|
User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4
|
|
Host: test.remote.server.com:213
|
|
Accept: */*
|
|
Content-Length: 6
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
postit
|
|
</protocol>
|
|
</verify>
|