| <testcase> | |
| <info> | |
| <keywords> | |
| HTTP | |
| HTTP POST | |
| HTTP NTLM auth | |
| </keywords> | |
| </info> | |
| # Server-side | |
| <reply> | |
| <data> | |
| HTTP/1.1 200 Thanks for this! swsclose | |
| Content-Length: 25 | |
| This is the final page ! | |
| </data> | |
| <data1001> | |
| HTTP/1.1 401 Now gimme that second request of crap | |
| Server: Microsoft-IIS/5.0 | |
| Content-Type: text/html; charset=iso-8859-1 | |
| Content-Length: 34 | |
| WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== | |
| This is not the real page either! | |
| </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 302 Thanks for this, but we want to redir you! | |
| Server: Microsoft-IIS/5.0 | |
| Content-Type: text/html; charset=iso-8859-1 | |
| Location: /1100 | |
| Content-Length: 34 | |
| This is not the real page either! | |
| </data1002> | |
| <datacheck> | |
| HTTP/1.1 401 Now gimme that second request of crap | |
| Server: Microsoft-IIS/5.0 | |
| Content-Type: text/html; charset=iso-8859-1 | |
| Content-Length: 34 | |
| WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== | |
| HTTP/1.1 302 Thanks for this, but we want to redir you! | |
| Server: Microsoft-IIS/5.0 | |
| Content-Type: text/html; charset=iso-8859-1 | |
| Location: /1100 | |
| Content-Length: 34 | |
| HTTP/1.1 200 Thanks for this! swsclose | |
| Content-Length: 25 | |
| This is the final page ! | |
| </datacheck> | |
| </reply> | |
| # Client-side | |
| <client> | |
| <features> | |
| NTLM | |
| !SSPI | |
| debug | |
| </features> | |
| <server> | |
| http | |
| </server> | |
| <name> | |
| HTTP POST with NTLM authorization and following a 302 redirect | |
| </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/1100 -u testuser:testpass --ntlm -L -d "stuff to send away" | |
| </command> | |
| <precheck> | |
| chkhostname curlhost | |
| </precheck> | |
| </client> | |
| # Verify data after the test has been "shot" | |
| <verify> | |
| <strip> | |
| ^User-Agent:.* | |
| </strip> | |
| <protocol> | |
| POST /1100 HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= | |
| User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 | |
| Accept: */* | |
| Content-Length: 0 | |
| Content-Type: application/x-www-form-urlencoded | |
| POST /1100 HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== | |
| User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 | |
| Accept: */* | |
| Content-Length: 18 | |
| Content-Type: application/x-www-form-urlencoded | |
| stuff to send awayGET /1100 HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS GnuTLS/2.6.6 zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.14 libssh2/1.1 | |
| Accept: */* | |
| </protocol> | |
| </verify> | |
| </testcase> |