Return to test2030 CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / tests / data |
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>