1<testcase> 2# Authorization is used to force curl to realize that the server is 3# speaking HTTP 1.0. The request must be resent with the correct 4# authorization header, but using HTTP 1.0, not 1.1. 5<info> 6<keywords> 7HTTP 8HTTP PUT 9HTTP Digest auth 10--anyauth 11HTTP/1.0 12</keywords> 13</info> 14 15# Server-side 16<reply> 17<data> 18HTTP/1.0 401 Authorization Required swsclose 19Server: testcurl 20WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" 21WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" 22WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" 23Content-Type: text/plain 24Content-Length: 35 25Connection: close 26 27Try again on this HTTP 1.0 server! 28</data> 29 30# This is supposed to be returned when the server gets a 31# Authorization: Digest line passed-in from the client 32<data1000> 33HTTP/1.0 200 OK swsclose 34Server: testcurl 35Content-Type: text/plain 36Content-Length: 23 37Connection: close 38 39This IS the real page! 40</data1000> 41 42<datacheck> 43HTTP/1.0 401 Authorization Required swsclose 44Server: testcurl 45WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" 46WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" 47WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" 48Content-Type: text/plain 49Content-Length: 35 50Connection: close 51 52HTTP/1.0 200 OK swsclose 53Server: testcurl 54Content-Type: text/plain 55Content-Length: 23 56Connection: close 57 58This IS the real page! 59</datacheck> 60 61</reply> 62 63# Client-side 64<client> 65<server> 66http 67</server> 68<features> 69!SSPI 70crypto 71</features> 72 <name> 73Downgraded HTTP PUT to HTTP 1.0 with authorization 74 </name> 75 <command> 76http://%HOSTIP:%HTTPPORT/1071 -T log/put1071 -u testuser:testpass --anyauth 77</command> 78<file name="log/put1071"> 79This is data we upload with PUT 80a second line 81line three 82four is the number of lines 83</file> 84</client> 85 86# Verify data after the test has been "shot" 87<verify> 88<strip> 89^User-Agent:.* 90</strip> 91<protocol> 92PUT /1071 HTTP/1.1 93Host: %HOSTIP:%HTTPPORT 94Accept: */* 95Content-Length: 85 96Expect: 100-continue 97 98This is data we upload with PUT 99a second line 100line three 101four is the number of lines 102PUT /1071 HTTP/1.0 103Host: %HOSTIP:%HTTPPORT 104Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1071", response="df4cef6b52a30e65d472dd848d2055a1" 105Accept: */* 106Content-Length: 85 107 108This is data we upload with PUT 109a second line 110line three 111four is the number of lines 112</protocol> 113</verify> 114</testcase> 115