Annotation of embedaddon/curl/tests/data/test2027, revision 1.1.1.1

1.1       misho       1: <testcase>
                      2: <info>
                      3: <keywords>
                      4: HTTP
                      5: HTTP GET
                      6: HTTP Digest auth
                      7: </keywords>
                      8: </info>
                      9: # Server-side
                     10: <reply>
                     11: 
                     12: <!--
                     13: 
                     14:  Explanation for the duplicate 400 requests:
                     15: 
                     16:  libcurl doesn't detect that a given Digest password is wrong already on the
                     17:  first 401 response (as the data400 gives). libcurl will instead consider the
                     18:  new response just as a duplicate and it sends another and detects the auth
                     19:  problem on the second 401 response!
                     20: 
                     21: -->
                     22: 
                     23: <!-- First request has Digest auth, wrong password -->
                     24: <data100>
                     25: HTTP/1.1 401 Need Digest auth
                     26: Server: Microsoft-IIS/5.0
                     27: Content-Type: text/html; charset=iso-8859-1
                     28: Content-Length: 27
                     29: WWW-Authenticate: Digest realm="testrealm", nonce="1"
                     30: 
                     31: This is not the real page!
                     32: </data100>
                     33: 
                     34: <data1100>
                     35: HTTP/1.1 401 Sorry wrong password
                     36: Server: Microsoft-IIS/5.0
                     37: Content-Type: text/html; charset=iso-8859-1
                     38: Content-Length: 29
                     39: WWW-Authenticate: Digest realm="testrealm", nonce="2"
                     40: 
                     41: This is a bad password page!
                     42: </data1100>
                     43: 
                     44: <!-- Second request has Digest auth, right password -->
                     45: <data200>
                     46: HTTP/1.1 401 Need Digest auth (2)
                     47: Server: Microsoft-IIS/5.0
                     48: Content-Type: text/html; charset=iso-8859-1
                     49: Content-Length: 27
                     50: WWW-Authenticate: Digest realm="testrealm", nonce="3"
                     51: 
                     52: This is not the real page!
                     53: </data200>
                     54: 
                     55: <data1200>
                     56: HTTP/1.1 200 Things are fine in server land
                     57: Server: Microsoft-IIS/5.0
                     58: Content-Type: text/html; charset=iso-8859-1
                     59: Content-Length: 32
                     60: 
                     61: Finally, this is the real page!
                     62: </data1200>
                     63: 
                     64: <!-- Third request has Digest auth, wrong password -->
                     65: <data300>
                     66: HTTP/1.1 401 Need Digest auth (3)
                     67: Server: Microsoft-IIS/5.0
                     68: Content-Type: text/html; charset=iso-8859-1
                     69: Content-Length: 27
                     70: WWW-Authenticate: Digest realm="testrealm", nonce="4"
                     71: 
                     72: This is not the real page!
                     73: </data300>
                     74: 
                     75: <data1300>
                     76: HTTP/1.1 401 Sorry wrong password (2)
                     77: Server: Microsoft-IIS/5.0
                     78: Content-Type: text/html; charset=iso-8859-1
                     79: Content-Length: 29
                     80: WWW-Authenticate: Digest realm="testrealm", nonce="5"
                     81: 
                     82: This is a bad password page!
                     83: </data1300>
                     84: 
                     85: <!-- Fourth request has Digest auth, wrong password -->
                     86: <data400>
                     87: HTTP/1.1 401 Need Digest auth (4)
                     88: Server: Microsoft-IIS/5.0
                     89: Content-Type: text/html; charset=iso-8859-1
                     90: Content-Length: 27
                     91: WWW-Authenticate: Digest realm="testrealm", nonce="6"
                     92: 
                     93: This is not the real page!
                     94: </data400>
                     95: 
                     96: <data1400>
                     97: HTTP/1.1 401 Sorry wrong password (3)
                     98: Server: Microsoft-IIS/5.0
                     99: Content-Type: text/html; charset=iso-8859-1
                    100: Content-Length: 29
                    101: WWW-Authenticate: Digest realm="testrealm", nonce="7"
                    102: 
                    103: This is a bad password page!
                    104: </data1400>
                    105: 
                    106: <!-- Fifth request has Digest auth, right password -->
                    107: <data1500>
                    108: HTTP/1.1 200 Things are fine in server land (2)
                    109: Server: Microsoft-IIS/5.0
                    110: Content-Type: text/html; charset=iso-8859-1
                    111: Content-Length: 32
                    112: 
                    113: Finally, this is the real page!
                    114: </data1500>
                    115: 
                    116: <datacheck>
                    117: HTTP/1.1 401 Need Digest auth
                    118: Server: Microsoft-IIS/5.0
                    119: Content-Type: text/html; charset=iso-8859-1
                    120: Content-Length: 27
                    121: WWW-Authenticate: Digest realm="testrealm", nonce="1"
                    122: 
                    123: HTTP/1.1 401 Sorry wrong password
                    124: Server: Microsoft-IIS/5.0
                    125: Content-Type: text/html; charset=iso-8859-1
                    126: Content-Length: 29
                    127: WWW-Authenticate: Digest realm="testrealm", nonce="2"
                    128: 
                    129: This is a bad password page!
                    130: HTTP/1.1 200 Things are fine in server land
                    131: Server: Microsoft-IIS/5.0
                    132: Content-Type: text/html; charset=iso-8859-1
                    133: Content-Length: 32
                    134: 
                    135: Finally, this is the real page!
                    136: HTTP/1.1 401 Need Digest auth (3)
                    137: Server: Microsoft-IIS/5.0
                    138: Content-Type: text/html; charset=iso-8859-1
                    139: Content-Length: 27
                    140: WWW-Authenticate: Digest realm="testrealm", nonce="4"
                    141: 
                    142: HTTP/1.1 401 Sorry wrong password (2)
                    143: Server: Microsoft-IIS/5.0
                    144: Content-Type: text/html; charset=iso-8859-1
                    145: Content-Length: 29
                    146: WWW-Authenticate: Digest realm="testrealm", nonce="5"
                    147: 
                    148: This is a bad password page!
                    149: HTTP/1.1 401 Sorry wrong password (3)
                    150: Server: Microsoft-IIS/5.0
                    151: Content-Type: text/html; charset=iso-8859-1
                    152: Content-Length: 29
                    153: WWW-Authenticate: Digest realm="testrealm", nonce="7"
                    154: 
                    155: HTTP/1.1 401 Sorry wrong password (3)
                    156: Server: Microsoft-IIS/5.0
                    157: Content-Type: text/html; charset=iso-8859-1
                    158: Content-Length: 29
                    159: WWW-Authenticate: Digest realm="testrealm", nonce="7"
                    160: 
                    161: This is a bad password page!
                    162: HTTP/1.1 200 Things are fine in server land (2)
                    163: Server: Microsoft-IIS/5.0
                    164: Content-Type: text/html; charset=iso-8859-1
                    165: Content-Length: 32
                    166: 
                    167: Finally, this is the real page!
                    168: </datacheck>
                    169: 
                    170: </reply>
                    171: 
                    172: # Client-side
                    173: <client>
                    174: <server>
                    175: http
                    176: </server>
                    177: <features>
                    178: !SSPI
                    179: crypto
                    180: </features>
                    181: <tool>
                    182: libauthretry
                    183: </tool>
                    184: 
                    185:  <name>
                    186: HTTP authorization retry (Digest)
                    187:  </name>
                    188:  <setenv>
                    189: # we force our own host name, in order to make the test machine independent
                    190: CURL_GETHOSTNAME=curlhost
                    191: # we try to use the LD_PRELOAD hack, if not a debug build
                    192: LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
                    193:  </setenv>
                    194:  <command>
                    195: http://%HOSTIP:%HTTPPORT/2027 digest digest
                    196: </command>
                    197: <precheck>
                    198: chkhostname curlhost
                    199: </precheck>
                    200: </client>
                    201: 
                    202: # Verify data after the test has been "shot"
                    203: <verify>
                    204: <strip>
                    205: ^User-Agent:.*
                    206: </strip>
                    207: <protocol>
                    208: GET /20270100 HTTP/1.1
                    209: Host: %HOSTIP:%HTTPPORT
                    210: Accept: */*
                    211: 
                    212: GET /20270100 HTTP/1.1
                    213: Host: %HOSTIP:%HTTPPORT
                    214: Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20270100", response="f7fd60eefaff5225971bf9b3d80d6ba6"
                    215: Accept: */*
                    216: 
                    217: GET /20270200 HTTP/1.1
                    218: Host: %HOSTIP:%HTTPPORT
                    219: Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20270200", response="785ca3ef511999f7e9c178195f5b388c"
                    220: Accept: */*
                    221: 
                    222: GET /20270300 HTTP/1.1
                    223: Host: %HOSTIP:%HTTPPORT
                    224: Accept: */*
                    225: 
                    226: GET /20270300 HTTP/1.1
                    227: Host: %HOSTIP:%HTTPPORT
                    228: Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/20270300", response="4c735d2360fd6848e7cb32a11ae3612b"
                    229: Accept: */*
                    230: 
                    231: GET /20270400 HTTP/1.1
                    232: Host: %HOSTIP:%HTTPPORT
                    233: Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"
                    234: Accept: */*
                    235: 
                    236: GET /20270400 HTTP/1.1
                    237: Host: %HOSTIP:%HTTPPORT
                    238: Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"
                    239: Accept: */*
                    240: 
                    241: GET /20270500 HTTP/1.1
                    242: Host: %HOSTIP:%HTTPPORT
                    243: Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20270500", response="8ef4d935fd964a46c3965c0863b52cf1"
                    244: Accept: */*
                    245: 
                    246: </protocol>
                    247: </verify>
                    248: </testcase>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>