xref: /aosp_15_r20/external/curl/tests/data/test1071 (revision 6236dae45794135f37c4eb022389c904c8b0090d)
1*6236dae4SAndroid Build Coastguard Worker<testcase>
2*6236dae4SAndroid Build Coastguard Worker# Authorization is used to force curl to realize that the server is
3*6236dae4SAndroid Build Coastguard Worker# speaking HTTP 1.0. The request must be resent with the correct
4*6236dae4SAndroid Build Coastguard Worker# authorization header, but using HTTP 1.0, not 1.1.
5*6236dae4SAndroid Build Coastguard Worker<info>
6*6236dae4SAndroid Build Coastguard Worker<keywords>
7*6236dae4SAndroid Build Coastguard WorkerHTTP
8*6236dae4SAndroid Build Coastguard WorkerHTTP PUT
9*6236dae4SAndroid Build Coastguard WorkerHTTP Digest auth
10*6236dae4SAndroid Build Coastguard Worker--anyauth
11*6236dae4SAndroid Build Coastguard WorkerHTTP/1.0
12*6236dae4SAndroid Build Coastguard Worker</keywords>
13*6236dae4SAndroid Build Coastguard Worker</info>
14*6236dae4SAndroid Build Coastguard Worker
15*6236dae4SAndroid Build Coastguard Worker# Server-side
16*6236dae4SAndroid Build Coastguard Worker<reply>
17*6236dae4SAndroid Build Coastguard Worker<data>
18*6236dae4SAndroid Build Coastguard WorkerHTTP/1.0 401 Authorization Required swsclose
19*6236dae4SAndroid Build Coastguard WorkerServer: testcurl
20*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
21*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
22*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
23*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
24*6236dae4SAndroid Build Coastguard WorkerContent-Length: 35
25*6236dae4SAndroid Build Coastguard WorkerConnection: close
26*6236dae4SAndroid Build Coastguard Worker
27*6236dae4SAndroid Build Coastguard WorkerTry again on this HTTP 1.0 server!
28*6236dae4SAndroid Build Coastguard Worker</data>
29*6236dae4SAndroid Build Coastguard Worker
30*6236dae4SAndroid Build Coastguard Worker# This is supposed to be returned when the server gets a
31*6236dae4SAndroid Build Coastguard Worker# Authorization: Digest line passed-in from the client
32*6236dae4SAndroid Build Coastguard Worker<data1000>
33*6236dae4SAndroid Build Coastguard WorkerHTTP/1.0 200 OK swsclose
34*6236dae4SAndroid Build Coastguard WorkerServer: testcurl
35*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
36*6236dae4SAndroid Build Coastguard WorkerContent-Length: 23
37*6236dae4SAndroid Build Coastguard WorkerConnection: close
38*6236dae4SAndroid Build Coastguard Worker
39*6236dae4SAndroid Build Coastguard WorkerThis IS the real page!
40*6236dae4SAndroid Build Coastguard Worker</data1000>
41*6236dae4SAndroid Build Coastguard Worker
42*6236dae4SAndroid Build Coastguard Worker<datacheck>
43*6236dae4SAndroid Build Coastguard WorkerHTTP/1.0 401 Authorization Required swsclose
44*6236dae4SAndroid Build Coastguard WorkerServer: testcurl
45*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
46*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
47*6236dae4SAndroid Build Coastguard WorkerWWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
48*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
49*6236dae4SAndroid Build Coastguard WorkerContent-Length: 35
50*6236dae4SAndroid Build Coastguard WorkerConnection: close
51*6236dae4SAndroid Build Coastguard Worker
52*6236dae4SAndroid Build Coastguard WorkerHTTP/1.0 200 OK swsclose
53*6236dae4SAndroid Build Coastguard WorkerServer: testcurl
54*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/plain
55*6236dae4SAndroid Build Coastguard WorkerContent-Length: 23
56*6236dae4SAndroid Build Coastguard WorkerConnection: close
57*6236dae4SAndroid Build Coastguard Worker
58*6236dae4SAndroid Build Coastguard WorkerThis IS the real page!
59*6236dae4SAndroid Build Coastguard Worker</datacheck>
60*6236dae4SAndroid Build Coastguard Worker
61*6236dae4SAndroid Build Coastguard Worker</reply>
62*6236dae4SAndroid Build Coastguard Worker
63*6236dae4SAndroid Build Coastguard Worker# Client-side
64*6236dae4SAndroid Build Coastguard Worker<client>
65*6236dae4SAndroid Build Coastguard Worker<server>
66*6236dae4SAndroid Build Coastguard Workerhttp
67*6236dae4SAndroid Build Coastguard Worker</server>
68*6236dae4SAndroid Build Coastguard Worker<features>
69*6236dae4SAndroid Build Coastguard Worker!SSPI
70*6236dae4SAndroid Build Coastguard Workercrypto
71*6236dae4SAndroid Build Coastguard Worker</features>
72*6236dae4SAndroid Build Coastguard Worker<name>
73*6236dae4SAndroid Build Coastguard WorkerDowngraded HTTP PUT to HTTP 1.0 with authorization
74*6236dae4SAndroid Build Coastguard Worker</name>
75*6236dae4SAndroid Build Coastguard Worker<command>
76*6236dae4SAndroid Build Coastguard Workerhttp://%HOSTIP:%HTTPPORT/%TESTNUMBER -T %LOGDIR/put%TESTNUMBER -u testuser:testpass --anyauth
77*6236dae4SAndroid Build Coastguard Worker</command>
78*6236dae4SAndroid Build Coastguard Worker<file name="%LOGDIR/put%TESTNUMBER">
79*6236dae4SAndroid Build Coastguard WorkerThis is data we upload with PUT
80*6236dae4SAndroid Build Coastguard Workera second line
81*6236dae4SAndroid Build Coastguard Workerline three
82*6236dae4SAndroid Build Coastguard Workerfour is the number of lines
83*6236dae4SAndroid Build Coastguard Worker</file>
84*6236dae4SAndroid Build Coastguard Worker</client>
85*6236dae4SAndroid Build Coastguard Worker
86*6236dae4SAndroid Build Coastguard Worker# Verify data after the test has been "shot"
87*6236dae4SAndroid Build Coastguard Worker<verify>
88*6236dae4SAndroid Build Coastguard Worker<protocol>
89*6236dae4SAndroid Build Coastguard WorkerPUT /%TESTNUMBER HTTP/1.1
90*6236dae4SAndroid Build Coastguard WorkerHost: %HOSTIP:%HTTPPORT
91*6236dae4SAndroid Build Coastguard WorkerUser-Agent: curl/%VERSION
92*6236dae4SAndroid Build Coastguard WorkerAccept: */*
93*6236dae4SAndroid Build Coastguard WorkerContent-Length: 85
94*6236dae4SAndroid Build Coastguard Worker
95*6236dae4SAndroid Build Coastguard WorkerThis is data we upload with PUT
96*6236dae4SAndroid Build Coastguard Workera second line
97*6236dae4SAndroid Build Coastguard Workerline three
98*6236dae4SAndroid Build Coastguard Workerfour is the number of lines
99*6236dae4SAndroid Build Coastguard WorkerPUT /%TESTNUMBER HTTP/1.0
100*6236dae4SAndroid Build Coastguard WorkerHost: %HOSTIP:%HTTPPORT
101*6236dae4SAndroid Build Coastguard WorkerAuthorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="df4cef6b52a30e65d472dd848d2055a1"
102*6236dae4SAndroid Build Coastguard WorkerUser-Agent: curl/%VERSION
103*6236dae4SAndroid Build Coastguard WorkerAccept: */*
104*6236dae4SAndroid Build Coastguard WorkerContent-Length: 85
105*6236dae4SAndroid Build Coastguard Worker
106*6236dae4SAndroid Build Coastguard WorkerThis is data we upload with PUT
107*6236dae4SAndroid Build Coastguard Workera second line
108*6236dae4SAndroid Build Coastguard Workerline three
109*6236dae4SAndroid Build Coastguard Workerfour is the number of lines
110*6236dae4SAndroid Build Coastguard Worker</protocol>
111*6236dae4SAndroid Build Coastguard Worker</verify>
112*6236dae4SAndroid Build Coastguard Worker</testcase>
113