Home | History | Annotate | Download | only in data
      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>
      7 HTTP
      8 HTTP PUT
      9 HTTP Digest auth
     10 --anyauth
     11 HTTP/1.0
     12 </keywords>
     13 </info>
     14 
     15 # Server-side
     16 <reply>
     17 <data>
     18 HTTP/1.0 401 Authorization Required swsclose
     19 Server: testcurl
     20 WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
     21 WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
     22 WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
     23 Content-Type: text/plain
     24 Content-Length: 35
     25 Connection: close
     26 
     27 Try 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>
     33 HTTP/1.0 200 OK swsclose
     34 Server: testcurl
     35 Content-Type: text/plain
     36 Content-Length: 23
     37 Connection: close
     38 
     39 This IS the real page!
     40 </data1000>
     41 
     42 <datacheck>
     43 HTTP/1.0 401 Authorization Required swsclose
     44 Server: testcurl
     45 WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
     46 WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
     47 WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
     48 Content-Type: text/plain
     49 Content-Length: 35
     50 Connection: close
     51 
     52 HTTP/1.0 200 OK swsclose
     53 Server: testcurl
     54 Content-Type: text/plain
     55 Content-Length: 23
     56 Connection: close
     57 
     58 This IS the real page!
     59 </datacheck>
     60 
     61 </reply>
     62 
     63 # Client-side
     64 <client>
     65 <server>
     66 http
     67 </server>
     68 <features>
     69 !SSPI
     70 crypto
     71 </features>
     72  <name>
     73 Downgraded HTTP PUT to HTTP 1.0 with authorization
     74  </name>
     75  <command>
     76 http://%HOSTIP:%HTTPPORT/1071 -T log/put1071 -u testuser:testpass --anyauth
     77 </command>
     78 <file name="log/put1071">
     79 This is data we upload with PUT
     80 a second line
     81 line three
     82 four 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>
     92 PUT /1071 HTTP/1.1
     93 Host: %HOSTIP:%HTTPPORT
     94 Accept: */*
     95 Content-Length: 85
     96 Expect: 100-continue
     97 
     98 This is data we upload with PUT
     99 a second line
    100 line three
    101 four is the number of lines
    102 PUT /1071 HTTP/1.0
    103 Host: %HOSTIP:%HTTPPORT
    104 Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1071", response="df4cef6b52a30e65d472dd848d2055a1"
    105 Accept: */*
    106 Content-Length: 85
    107 
    108 This is data we upload with PUT
    109 a second line
    110 line three
    111 four is the number of lines
    112 </protocol>
    113 </verify>
    114 </testcase>
    115