From ecc6f550eb934575da4f863bed1915c426380fd3 Mon Sep 17 00:00:00 2001 From: Dan Fandrich Date: Tue, 25 Nov 2008 23:30:53 +0000 Subject: [PATCH] Added tests 1087 and 1088 to test Basic authentication on a redirect with and without --location-trusted --- CHANGES | 9 ++++ tests/data/Makefile.am | 2 +- tests/data/test1087 | 110 ++++++++++++++++++++++++++++++++++++++++ tests/data/test1088 | 112 +++++++++++++++++++++++++++++++++++++++++ tests/data/test234 | 1 + 5 files changed, 233 insertions(+), 1 deletion(-) create mode 100644 tests/data/test1087 create mode 100644 tests/data/test1088 diff --git a/CHANGES b/CHANGES index cd08f7dd7..1528e61f2 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,15 @@ Changelog +Daniel Fandrich (25 Nov 2008) +- If a HTTP request is Basic and num is already >=1000, the HTTP test + server adds 1 to num to get the data section to return. This allows + testing authentication negotiations using the Basic authentication + method. + +- Added tests 1087 and 1088 to test Basic authentication on a redirect + with and without --location-trusted + Daniel Stenberg (24 Nov 2008) - Based on a patch by Vlad Grachov, libcurl now uses a new libssh2 0.19 function when built to support SCP and SFTP that helps the library to know diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index beb3a5c57..5c9426b40 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -59,7 +59,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \ test1064 test1065 test1066 test1067 test1068 test1069 test1070 test1071 \ test1072 test1073 test1074 test1075 test1076 test1077 test1078 test1079 \ test1080 test1081 test1082 test1083 test1084 test1085 test633 test634 \ - test635 test636 test637 test558 test559 test1086 + test635 test636 test637 test558 test559 test1086 test1087 test1088 filecheck: @mkdir test-place; \ diff --git a/tests/data/test1087 b/tests/data/test1087 new file mode 100644 index 000000000..d3bec0c84 --- /dev/null +++ b/tests/data/test1087 @@ -0,0 +1,110 @@ + + + +HTTP +HTTP proxy +HTTP Basic auth +HTTP proxy Basic auth +followlocation +--anyauth + + + +# +# Server-side + + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + + + +HTTP/1.1 302 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/10871002 +Content-Length: 0 +Connection: close + + + +HTTP/1.1 200 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + +contents + + + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + +HTTP/1.1 302 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/10871002 +Content-Length: 0 +Connection: close + +HTTP/1.1 200 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + +contents + + + +# +# Client-side + + +http + + +HTTP, proxy with --anyauth and Location: to new host + + +http://first.host.it.is/we/want/that/page/10871000 -x %HOSTIP:%HTTPPORT --user iam:myself --location --anyauth + + + +# +# Verify data after the test has been "shot" + + +^User-Agent:.* + + +GET http://first.host.it.is/we/want/that/page/10871000 HTTP/1.1 +Host: first.host.it.is +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://first.host.it.is/we/want/that/page/10871000 HTTP/1.1 +Authorization: Basic aWFtOm15c2VsZg== +Host: first.host.it.is +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/10871002 HTTP/1.1 +Host: goto.second.host.now +Accept: */* +Proxy-Connection: Keep-Alive + + + + diff --git a/tests/data/test1088 b/tests/data/test1088 new file mode 100644 index 000000000..13e7d03cb --- /dev/null +++ b/tests/data/test1088 @@ -0,0 +1,112 @@ + + + +HTTP +HTTP proxy +HTTP Basic auth +HTTP proxy Basic auth +followlocation +--anyauth +--location-trusted + + + +# +# Server-side + + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + + + +HTTP/1.1 302 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/10881002 +Content-Length: 0 +Connection: close + + + +HTTP/1.1 200 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + +contents + + + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + +HTTP/1.1 302 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/10881002 +Content-Length: 0 +Connection: close + +HTTP/1.1 200 OK +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + +contents + + + +# +# Client-side + + +http + + +HTTP, proxy with --anyauth and Location: to new host using location-trusted + + +http://first.host.it.is/we/want/that/page/10881000 -x %HOSTIP:%HTTPPORT --user iam:myself --location-trusted --anyauth + + + +# +# Verify data after the test has been "shot" + + +^User-Agent:.* + + +GET http://first.host.it.is/we/want/that/page/10881000 HTTP/1.1 +Host: first.host.it.is +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://first.host.it.is/we/want/that/page/10881000 HTTP/1.1 +Authorization: Basic aWFtOm15c2VsZg== +Host: first.host.it.is +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/10881002 HTTP/1.1 +Authorization: Basic aWFtOm15c2VsZg== +Host: goto.second.host.now +Accept: */* +Proxy-Connection: Keep-Alive + + + + diff --git a/tests/data/test234 b/tests/data/test234 index 1f4f35d3c..d8c708109 100644 --- a/tests/data/test234 +++ b/tests/data/test234 @@ -6,6 +6,7 @@ HTTP GET HTTP proxy HTTP proxy Basic auth followlocation +--location-trusted