Annotation of embedaddon/curl/tests/data/test1286, revision 1.1.1.1
1.1 misho 1: <testcase>
2: <info>
3: <keywords>
4: HTTP
5: HTTP GET
6: HTTP Digest auth
7: followlocation
8: </keywords>
9: </info>
10:
11: # Server-side
12: <reply>
13: <data>
14: HTTP/1.1 401 authentication please swsbounce
15: Server: Microsoft-IIS/6.0
16: WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth"
17: Content-Type: text/html; charset=iso-8859-1
18: Content-Length: 0
19:
20: </data>
21: <data1000>
22: HTTP/1.1 302 Thanks for this, but we want to redir you!
23: Server: Microsoft-IIS/5.0
24: Content-Type: text/html; charset=iso-8859-1
25: Location: /12860001
26: Content-Length: 0
27:
28: </data1000>
29: <data1001>
30: HTTP/1.1 404 Not Found
31: Server: Microsoft-IIS/5.0
32: Content-Type: text/html; charset=iso-8859-1
33: Content-Length: 0
34:
35: </data1001>
36:
37: <datacheck>
38: HTTP/1.1 401 authentication please swsbounce
39: Server: Microsoft-IIS/6.0
40: WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth"
41: Content-Type: text/html; charset=iso-8859-1
42: Content-Length: 0
43:
44: HTTP/1.1 302 Thanks for this, but we want to redir you!
45: Server: Microsoft-IIS/5.0
46: Content-Type: text/html; charset=iso-8859-1
47: Location: /12860001
48: Content-Length: 0
49:
50: HTTP/1.1 404 Not Found
51: Server: Microsoft-IIS/5.0
52: Content-Type: text/html; charset=iso-8859-1
53: Content-Length: 0
54:
55: </datacheck>
56:
57: </reply>
58:
59: # Client-side
60: <client>
61: #
62: <server>
63: http
64: </server>
65: <features>
66: crypto
67: </features>
68: <name>
69: HTTP GET --digest increasing nonce-count
70: </name>
71: # This test is to ensure the nonce-count (nc) increases
72: # https://github.com/curl/curl/pull/1251
73: <command>
74: -u auser:apasswd --location --digest http://%HOSTIP:%HTTPPORT/1286
75: </command>
76: </client>
77:
78: # Verify data after the test has been "shot"
79: <verify>
80: <strip>
81: ^User-Agent:.*
82: </strip>
83: # Reorder the fields in 'Authorization: Digest' header.
84: # Since regular and SSPI digest auth header fields may not have the same order
85: # or whitespace we homogenize so that both may be tested. Also:
86: # - Remove the unique value from cnonce if in RFC format
87: # - Remove the unique value from response if in RFC format
88: # - Remove quotes from qop="auth" used by SSPI
89: # The if statement is one line because runtests evaluates one line at a time.
90: <strippart>
91: if(s/^(Authorization: Digest )([^\r\n]+)(\r?\n)$//) { $_ = $1 . join(', ', map { s/^(cnonce=)"[a-zA-Z0-9+\/=]+"$/$1REMOVED/; s/^(response=)"[a-f0-9]{32}"$/$1REMOVED/; s/^qop="auth"$/qop=auth/; $_ } sort split(/, */, $2)) . $3; }
92: </strippart>
93: <protocol>
94: GET /1286 HTTP/1.1
95: Host: %HOSTIP:%HTTPPORT
96: Accept: */*
97:
98: GET /1286 HTTP/1.1
99: Host: %HOSTIP:%HTTPPORT
100: Authorization: Digest cnonce=REMOVED, nc=00000001, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/1286", username="auser"
101: Accept: */*
102:
103: GET /12860001 HTTP/1.1
104: Host: %HOSTIP:%HTTPPORT
105: Authorization: Digest cnonce=REMOVED, nc=00000002, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/12860001", username="auser"
106: Accept: */*
107:
108: </protocol>
109: </verify>
110: </testcase>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>