Annotation of embedaddon/curl/tests/data/test2030, revision 1.1
1.1 ! misho 1: <testcase>
! 2: <info>
! 3: <keywords>
! 4: HTTP
! 5: HTTP GET
! 6: HTTP Digest auth
! 7: HTTP NTLM auth
! 8: </keywords>
! 9: </info>
! 10: # Server-side
! 11: <reply>
! 12:
! 13: <!-- Alternate the order that Digest and NTLM headers appear in responses to
! 14: ensure that the order doesn't matter. -->
! 15:
! 16: <!--
! 17:
! 18: Explanation for the duplicate 400 requests:
! 19:
! 20: libcurl doesn't detect that a given Digest password is wrong already on the
! 21: first 401 response (as the data400 gives). libcurl will instead consider the
! 22: new response just as a duplicate and it sends another and detects the auth
! 23: problem on the second 401 response!
! 24:
! 25: -->
! 26:
! 27:
! 28: <!-- First request has NTLM auth, wrong password -->
! 29: <data100>
! 30: HTTP/1.1 401 Need Digest or NTLM auth
! 31: Server: Microsoft-IIS/5.0
! 32: Content-Type: text/html; charset=iso-8859-1
! 33: Content-Length: 27
! 34: WWW-Authenticate: NTLM
! 35: WWW-Authenticate: Digest realm="testrealm", nonce="1"
! 36:
! 37: This is not the real page!
! 38: </data100>
! 39:
! 40: <data1101>
! 41: HTTP/1.1 401 NTLM intermediate
! 42: Server: Microsoft-IIS/5.0
! 43: Content-Type: text/html; charset=iso-8859-1
! 44: Content-Length: 33
! 45: WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
! 46:
! 47: This is still not the real page!
! 48: </data1101>
! 49:
! 50: <data1102>
! 51: HTTP/1.1 401 Sorry wrong password
! 52: Server: Microsoft-IIS/5.0
! 53: Content-Type: text/html; charset=iso-8859-1
! 54: Content-Length: 29
! 55: WWW-Authenticate: Digest realm="testrealm", nonce="2"
! 56: WWW-Authenticate: NTLM
! 57:
! 58: This is a bad password page!
! 59: </data1102>
! 60:
! 61: <!-- Second request has Digest auth, right password -->
! 62: <data200>
! 63: HTTP/1.1 401 Need Digest or NTLM auth (2)
! 64: Server: Microsoft-IIS/5.0
! 65: Content-Type: text/html; charset=iso-8859-1
! 66: Content-Length: 27
! 67: WWW-Authenticate: NTLM
! 68: WWW-Authenticate: Digest realm="testrealm", nonce="3"
! 69:
! 70: This is not the real page!
! 71: </data200>
! 72:
! 73: <data1200>
! 74: HTTP/1.1 200 Things are fine in server land
! 75: Server: Microsoft-IIS/5.0
! 76: Content-Type: text/html; charset=iso-8859-1
! 77: Content-Length: 32
! 78:
! 79: Finally, this is the real page!
! 80: </data1200>
! 81:
! 82: <!-- Third request has NTLM auth, wrong password -->
! 83: <data300>
! 84: HTTP/1.1 401 Need Digest or NTLM auth (3)
! 85: Server: Microsoft-IIS/5.0
! 86: Content-Type: text/html; charset=iso-8859-1
! 87: Content-Length: 27
! 88: WWW-Authenticate: Digest realm="testrealm", nonce="4"
! 89: WWW-Authenticate: NTLM
! 90:
! 91: This is not the real page!
! 92: </data300>
! 93:
! 94: <data1301>
! 95: HTTP/1.1 401 NTLM intermediate (2)
! 96: Server: Microsoft-IIS/5.0
! 97: Content-Type: text/html; charset=iso-8859-1
! 98: Content-Length: 33
! 99: WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
! 100:
! 101: This is still not the real page!
! 102: </data1301>
! 103:
! 104: <data1302>
! 105: HTTP/1.1 401 Sorry wrong password (2)
! 106: Server: Microsoft-IIS/5.0
! 107: Content-Type: text/html; charset=iso-8859-1
! 108: Content-Length: 29
! 109: WWW-Authenticate: NTLM
! 110: WWW-Authenticate: Digest realm="testrealm", nonce="5"
! 111:
! 112: This is a bad password page!
! 113: </data1302>
! 114:
! 115: <!-- Fourth request has Digest auth, wrong password -->
! 116: <data400>
! 117: HTTP/1.1 401 Need Digest or NTLM auth (4)
! 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="6"
! 122: WWW-Authenticate: NTLM
! 123:
! 124: This is not the real page!
! 125: </data400>
! 126:
! 127: <data1400>
! 128: HTTP/1.1 401 Sorry wrong password (3)
! 129: Server: Microsoft-IIS/5.0
! 130: Content-Type: text/html; charset=iso-8859-1
! 131: Content-Length: 29
! 132: WWW-Authenticate: NTLM
! 133: WWW-Authenticate: Digest realm="testrealm", nonce="7"
! 134:
! 135: This is a bad password page!
! 136: </data1400>
! 137:
! 138: <!-- Fifth request has Digest auth, right password -->
! 139: <data500>
! 140: HTTP/1.1 401 Need Digest or NTLM auth (5)
! 141: Server: Microsoft-IIS/5.0
! 142: Content-Type: text/html; charset=iso-8859-1
! 143: Content-Length: 27
! 144: WWW-Authenticate: Digest realm="testrealm", nonce="8"
! 145: WWW-Authenticate: NTLM
! 146:
! 147: This is not the real page!
! 148: </data500>
! 149:
! 150: <data1500>
! 151: HTTP/1.1 200 Things are fine in server land (2)
! 152: Server: Microsoft-IIS/5.0
! 153: Content-Type: text/html; charset=iso-8859-1
! 154: Content-Length: 32
! 155:
! 156: Finally, this is the real page!
! 157: </data1500>
! 158:
! 159: <datacheck>
! 160: HTTP/1.1 401 NTLM intermediate
! 161: Server: Microsoft-IIS/5.0
! 162: Content-Type: text/html; charset=iso-8859-1
! 163: Content-Length: 33
! 164: WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
! 165:
! 166: HTTP/1.1 401 Sorry wrong password
! 167: Server: Microsoft-IIS/5.0
! 168: Content-Type: text/html; charset=iso-8859-1
! 169: Content-Length: 29
! 170: WWW-Authenticate: Digest realm="testrealm", nonce="2"
! 171: WWW-Authenticate: NTLM
! 172:
! 173: This is a bad password page!
! 174: HTTP/1.1 200 Things are fine in server land
! 175: Server: Microsoft-IIS/5.0
! 176: Content-Type: text/html; charset=iso-8859-1
! 177: Content-Length: 32
! 178:
! 179: Finally, this is the real page!
! 180: HTTP/1.1 401 NTLM intermediate (2)
! 181: Server: Microsoft-IIS/5.0
! 182: Content-Type: text/html; charset=iso-8859-1
! 183: Content-Length: 33
! 184: WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=
! 185:
! 186: HTTP/1.1 401 Sorry wrong password (2)
! 187: Server: Microsoft-IIS/5.0
! 188: Content-Type: text/html; charset=iso-8859-1
! 189: Content-Length: 29
! 190: WWW-Authenticate: NTLM
! 191: WWW-Authenticate: Digest realm="testrealm", nonce="5"
! 192:
! 193: This is a bad password page!
! 194: HTTP/1.1 401 Sorry wrong password (3)
! 195: Server: Microsoft-IIS/5.0
! 196: Content-Type: text/html; charset=iso-8859-1
! 197: Content-Length: 29
! 198: WWW-Authenticate: NTLM
! 199: WWW-Authenticate: Digest realm="testrealm", nonce="7"
! 200:
! 201: HTTP/1.1 401 Sorry wrong password (3)
! 202: Server: Microsoft-IIS/5.0
! 203: Content-Type: text/html; charset=iso-8859-1
! 204: Content-Length: 29
! 205: WWW-Authenticate: NTLM
! 206: WWW-Authenticate: Digest realm="testrealm", nonce="7"
! 207:
! 208: This is a bad password page!
! 209: HTTP/1.1 200 Things are fine in server land (2)
! 210: Server: Microsoft-IIS/5.0
! 211: Content-Type: text/html; charset=iso-8859-1
! 212: Content-Length: 32
! 213:
! 214: Finally, this is the real page!
! 215: </datacheck>
! 216:
! 217: </reply>
! 218:
! 219: # Client-side
! 220: <client>
! 221: <features>
! 222: NTLM
! 223: SSL
! 224: !SSPI
! 225: </features>
! 226: <server>
! 227: http
! 228: </server>
! 229: <tool>
! 230: libauthretry
! 231: </tool>
! 232:
! 233: <name>
! 234: HTTP authorization retry (NTLM switching to Digest)
! 235: </name>
! 236: <setenv>
! 237: # we force our own host name, in order to make the test machine independent
! 238: CURL_GETHOSTNAME=curlhost
! 239: # we try to use the LD_PRELOAD hack, if not a debug build
! 240: LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
! 241: </setenv>
! 242: <command>
! 243: http://%HOSTIP:%HTTPPORT/2030 ntlm digest
! 244: </command>
! 245: <precheck>
! 246: chkhostname curlhost
! 247: </precheck>
! 248: </client>
! 249:
! 250: # Verify data after the test has been "shot"
! 251: <verify>
! 252: <strip>
! 253: ^User-Agent:.*
! 254: </strip>
! 255: <protocol>
! 256: GET /20300100 HTTP/1.1
! 257: Host: %HOSTIP:%HTTPPORT
! 258: Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
! 259: Accept: */*
! 260:
! 261: GET /20300100 HTTP/1.1
! 262: Host: %HOSTIP:%HTTPPORT
! 263: Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
! 264: Accept: */*
! 265:
! 266: GET /20300200 HTTP/1.1
! 267: Host: %HOSTIP:%HTTPPORT
! 268: Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20300200", response="2f2d784ba53a0a307758a90e98d25c27"
! 269: Accept: */*
! 270:
! 271: GET /20300300 HTTP/1.1
! 272: Host: %HOSTIP:%HTTPPORT
! 273: Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
! 274: Accept: */*
! 275:
! 276: GET /20300300 HTTP/1.1
! 277: Host: %HOSTIP:%HTTPPORT
! 278: Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
! 279: Accept: */*
! 280:
! 281: GET /20300400 HTTP/1.1
! 282: Host: %HOSTIP:%HTTPPORT
! 283: Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"
! 284: Accept: */*
! 285:
! 286: GET /20300400 HTTP/1.1
! 287: Host: %HOSTIP:%HTTPPORT
! 288: Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"
! 289: Accept: */*
! 290:
! 291: GET /20300500 HTTP/1.1
! 292: Host: %HOSTIP:%HTTPPORT
! 293: Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20300500", response="198757e61163a779cf24ed4c49c1ad7d"
! 294: Accept: */*
! 295:
! 296: </protocol>
! 297: </verify>
! 298: </testcase>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>