test 153 tests Digest authorization and stale=true stuff
authorDaniel Stenberg <daniel@haxx.se>
Wed, 31 Mar 2004 11:51:21 +0000 (11:51 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 31 Mar 2004 11:51:21 +0000 (11:51 +0000)
tests/data/Makefile.am
tests/data/test153 [new file with mode: 0644]

index 2b6381a..46df9cb 100644 (file)
@@ -23,7 +23,7 @@ test40 test42 test69 test70 test71 test72 test73 test146 test505 \
 test74 test75 test76 test77 test78 test147 test148 test506 test79 test80 \
 test81 test82 test83 test84 test85 test86 test87 test507 test149 test88 \
 test89 test90 test508 test91 test92 test203 test93 test94 test95 test509 \
-test510 test97 test98 test99 test150 test151 test152
+test510 test97 test98 test99 test150 test151 test152 test153
 
 # The following tests have been removed from the dist since they no longer
 # work. We need to fix the test suite's FTPS server first, then bring them
diff --git a/tests/data/test153 b/tests/data/test153
new file mode 100644 (file)
index 0000000..66252ca
--- /dev/null
@@ -0,0 +1,121 @@
+# Server-side
+<reply>
+# reply back and ask for Digest auth
+<data1>
+HTTP/1.1 401 Authorization Required swsclose\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"\r
+Content-Type: text/html; charset=iso-8859-1\r
+\r
+This is not the real page
+</data1>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1001>
+HTTP/1.1 200 OK\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 23\r
+\r
+This IS the real page!
+</data1001>
+
+#
+# This is the second request, and this sends back a response saying that
+# the request contained stale data. We want an update. Set swsbounce to
+# bounce on to data1003 on the second request.
+<data1002>
+HTTP/1.1 401 Authorization re-negotiation please swsbounce\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 25\r
+\r
+This is not the real page
+</data1002>
+
+# The second request to the 1002 section will bounce this one back instead
+# thanks to the swsbounce keyword up there
+<data1003>
+HTTP/1.1 200 OK\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 30\r
+\r
+This IS the second real page!
+</data1003>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with Digest authorization with stale=true
+ </name>
+ <command>
+http://%HOSTIP:%HOSTPORT/1530001 -u testuser:testpass --digest http://%HOSTIP:%HOSTPORT/1530002
+</command>
+</test>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1530001 HTTP/1.1\r
+Host: 127.0.0.1:8999\r
+Pragma: no-cache\r
+Accept: */*\r
+\r
+GET /1530001 HTTP/1.1\r
+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530001", response="f4f83139396995bac665f24a1f1055c7"\r
+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3\r
+Host: 127.0.0.1:8999\r
+Pragma: no-cache\r
+Accept: */*\r
+\r
+GET /1530002 HTTP/1.1\r
+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530002", response="f84511b014fdd0ba6494f42871079c32"\r
+User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS\r
+Host: 127.0.0.1:8999\r
+Pragma: no-cache\r
+Accept: */*\r
+\r
+GET /1530002 HTTP/1.1\r
+Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/1530002", response="2f27c3218067948ccc8187cfe23881ee"\r
+User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS\r
+Host: 127.0.0.1:8999\r
+Pragma: no-cache\r
+Accept: */*\r
+\r
+</protocol>
+<stdout>
+HTTP/1.1 401 Authorization Required swsclose\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"\r
+Content-Type: text/html; charset=iso-8859-1\r
+\r
+HTTP/1.1 200 OK\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 23\r
+\r
+This IS the real page!
+HTTP/1.1 401 Authorization re-negotiation please swsbounce\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 25\r
+\r
+HTTP/1.1 200 OK\r
+Server: Apache/1.3.27 (Darwin) PHP/4.1.2\r
+Content-Type: text/html; charset=iso-8859-1\r
+Content-Length: 30\r
+\r
+This IS the second real page!
+</stdout>
+</verify>