123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- <testcase>
- # Authorization is used to force curl to realize that the server is
- # speaking HTTP 1.0. The request must be resent with the correct
- # authorization header, but using HTTP 1.0, not 1.1.
- <info>
- <keywords>
- HTTP
- HTTP PUT
- HTTP Digest auth
- --anyauth
- HTTP/1.0
- </keywords>
- </info>
- # Server-side
- <reply>
- <data>
- HTTP/1.0 401 Authorization Required swsclose
- Server: testcurl
- WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
- WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
- WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
- Content-Type: text/plain
- Content-Length: 35
- Connection: close
- Try again on this HTTP 1.0 server!
- </data>
- # This is supposed to be returned when the server gets a
- # Authorization: Digest line passed-in from the client
- <data1000>
- HTTP/1.0 200 OK swsclose
- Server: testcurl
- Content-Type: text/plain
- Content-Length: 23
- Connection: close
- This IS the real page!
- </data1000>
- <datacheck>
- HTTP/1.0 401 Authorization Required swsclose
- Server: testcurl
- WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"
- WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"
- WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"
- Content-Type: text/plain
- Content-Length: 35
- Connection: close
- HTTP/1.0 200 OK swsclose
- Server: testcurl
- Content-Type: text/plain
- Content-Length: 23
- Connection: close
- This IS the real page!
- </datacheck>
- </reply>
- # Client-side
- <client>
- <server>
- http
- </server>
- <features>
- !SSPI
- crypto
- </features>
- <name>
- Downgraded HTTP PUT to HTTP 1.0 with authorization
- </name>
- <command>
- http://%HOSTIP:%HTTPPORT/%TESTNUMBER -T %LOGDIR/put%TESTNUMBER -u testuser:testpass --anyauth
- </command>
- <file name="%LOGDIR/put%TESTNUMBER">
- This is data we upload with PUT
- a second line
- line three
- four is the number of lines
- </file>
- </client>
- # Verify data after the test has been "shot"
- <verify>
- <protocol>
- PUT /%TESTNUMBER HTTP/1.1
- Host: %HOSTIP:%HTTPPORT
- User-Agent: curl/%VERSION
- Accept: */*
- Content-Length: 85
- This is data we upload with PUT
- a second line
- line three
- four is the number of lines
- PUT /%TESTNUMBER HTTP/1.0
- Host: %HOSTIP:%HTTPPORT
- Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="df4cef6b52a30e65d472dd848d2055a1"
- User-Agent: curl/%VERSION
- Accept: */*
- Content-Length: 85
- This is data we upload with PUT
- a second line
- line three
- four is the number of lines
- </protocol>
- </verify>
- </testcase>
|