1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP PUT 6HTTP Digest auth 7</keywords> 8</info> 9 10# Server-side 11<reply> 12<data> 13HTTP/1.1 401 authentication please swsbounce 14Server: Microsoft-IIS/6.0 15WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" 16Content-Type: text/html; charset=iso-8859-1 17Content-Length: 0 18 19</data> 20<data1000> 21HTTP/1.1 200 A OK 22Server: Microsoft-IIS/6.0 23Content-Type: text/html; charset=iso-8859-1 24Content-Length: 3 25 26ok 27</data1000> 28 29<datacheck> 30HTTP/1.1 401 authentication please swsbounce 31Server: Microsoft-IIS/6.0 32WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" 33Content-Type: text/html; charset=iso-8859-1 34Content-Length: 0 35 36HTTP/1.1 200 A OK 37Server: Microsoft-IIS/6.0 38Content-Type: text/html; charset=iso-8859-1 39Content-Length: 3 40 41ok 42</datacheck> 43 44</reply> 45 46# Client-side 47<client> 48# 49<server> 50http 51</server> 52<features> 53!SSPI 54crypto 55</features> 56<name> 57HTTP PUT --digest with user-specified Content-Length header 58</name> 59# This test is to ensure 'Content-Length: 0' is sent while negotiating auth 60# even when there is a user-specified Content-Length header. 61# https://github.com/curl/curl/pull/1242 62<command> 63-H "Content-Length: 85" -u auser:apasswd --digest -T log/put1285 http://%HOSTIP:%HTTPPORT/1285 64</command> 65<file name="log/put1285"> 66This is data we upload with PUT 67a second line 68line three 69four is the number of lines 70</file> 71</client> 72 73# Verify data after the test has been "shot" 74<verify> 75<strip> 76^User-Agent:.* 77</strip> 78<protocol> 79PUT /1285 HTTP/1.1 80Host: %HOSTIP:%HTTPPORT 81Accept: */* 82Content-Length: 0 83 84PUT /1285 HTTP/1.1 85Host: %HOSTIP:%HTTPPORT 86Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1285", response="dc185587d5e8391b347eef194c2a3cd6" 87Accept: */* 88Content-Length: 85 89Expect: 100-continue 90 91This is data we upload with PUT 92a second line 93line three 94four is the number of lines 95</protocol> 96</verify> 97</testcase> 98