Home | History | Annotate | Download | only in data
      1 <testcase>
      2 <info>
      3 <keywords>
      4 HTTP
      5 HTTP GET
      6 HTTP Digest auth
      7 </keywords>
      8 </info>
      9 
     10 # Server-side
     11 <reply>
     12 # reply back and ask for Digest auth
     13 <data1>
     14 HTTP/1.1 401 Authorization Required swsclose
     15 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
     16 WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"
     17 Content-Type: text/html; charset=iso-8859-1
     18 Content-Length: 26
     19 
     20 This is not the real page
     21 </data1>
     22 
     23 # This is supposed to be returned when the server gets a
     24 # Authorization: Digest line passed-in from the client
     25 <data1001>
     26 HTTP/1.1 200 OK
     27 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
     28 Content-Type: text/html; charset=iso-8859-1
     29 Content-Length: 23
     30 
     31 This IS the real page!
     32 </data1001>
     33 
     34 #
     35 # This is the second request, and this sends back a response saying that
     36 # the request contained stale data. We want an update. Set swsbounce to
     37 # bounce on to data1003 on the second request.
     38 <data1002>
     39 HTTP/1.1 401 Authorization re-negotiation please swsbounce
     40 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
     41 WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"
     42 Content-Type: text/html; charset=iso-8859-1
     43 Content-Length: 25
     44 
     45 This is not the real page
     46 </data1002>
     47 
     48 # The second request to the 1002 section will bounce this one back instead
     49 # thanks to the swsbounce keyword up there
     50 <data1003>
     51 HTTP/1.1 200 OK
     52 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
     53 Content-Type: text/html; charset=iso-8859-1
     54 Content-Length: 30
     55 
     56 This IS the second real page!
     57 </data1003>
     58 </reply>
     59 
     60 # Client-side
     61 <client>
     62 <server>
     63 http
     64 </server>
     65 <features>
     66 !SSPI
     67 crypto
     68 </features>
     69  <name>
     70 HTTP with Digest authorization with stale=true
     71  </name>
     72  <command>
     73 http://%HOSTIP:%HTTPPORT/1530001 -u testuser:testpass --digest http://%HOSTIP:%HTTPPORT/1530002
     74 </command>
     75 </client>
     76 
     77 # Verify data after the test has been "shot"
     78 <verify>
     79 <strip>
     80 ^Authorization.*cnonce
     81 ^User-Agent:.*
     82 </strip>
     83 <protocol>
     84 GET /1530001 HTTP/1.1
     85 Host: %HOSTIP:%HTTPPORT
     86 Accept: */*
     87 
     88 GET /1530001 HTTP/1.1
     89 Host: %HOSTIP:%HTTPPORT
     90 Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530001", response="f4f83139396995bac665f24a1f1055c7"
     91 User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
     92 Accept: */*
     93 
     94 GET /1530002 HTTP/1.1
     95 Host: %HOSTIP:%HTTPPORT
     96 Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530002", response="f84511b014fdd0ba6494f42871079c32"
     97 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
     98 Accept: */*
     99 
    100 GET /1530002 HTTP/1.1
    101 Host: %HOSTIP:%HTTPPORT
    102 Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/1530002", cnonce="MTA4MzIy", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm="MD5"
    103 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
    104 Accept: */*
    105 
    106 </protocol>
    107 <stdout>
    108 HTTP/1.1 401 Authorization Required swsclose
    109 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
    110 WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"
    111 Content-Type: text/html; charset=iso-8859-1
    112 Content-Length: 26
    113 
    114 HTTP/1.1 200 OK
    115 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
    116 Content-Type: text/html; charset=iso-8859-1
    117 Content-Length: 23
    118 
    119 This IS the real page!
    120 HTTP/1.1 401 Authorization re-negotiation please swsbounce
    121 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
    122 WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"
    123 Content-Type: text/html; charset=iso-8859-1
    124 Content-Length: 25
    125 
    126 HTTP/1.1 200 OK
    127 Server: Apache/1.3.27 (Darwin) PHP/4.1.2
    128 Content-Type: text/html; charset=iso-8859-1
    129 Content-Length: 30
    130 
    131 This IS the second real page!
    132 </stdout>
    133 </verify>
    134 </testcase>
    135