114 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| <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>
 | |
| crypto
 | |
| </features>
 | |
|  <name>
 | |
| Downgraded HTTP PUT to HTTP 1.0 with authorization
 | |
|  </name>
 | |
|  <command>
 | |
| http://%HOSTIP:%HTTPPORT/1071 -T log/put1071 -u testuser:testpass --anyauth
 | |
| </command>
 | |
| <file name="log/put1071">
 | |
| 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>
 | |
| <strip>
 | |
| ^User-Agent:.*
 | |
| </strip>
 | |
| <protocol>
 | |
| PUT /1071 HTTP/1.1
 | |
| Host: %HOSTIP:%HTTPPORT
 | |
| Accept: */*
 | |
| Content-Length: 85
 | |
| Expect: 100-continue
 | |
| 
 | |
| This is data we upload with PUT
 | |
| a second line
 | |
| line three
 | |
| four is the number of lines
 | |
| PUT /1071 HTTP/1.0
 | |
| Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1071", response="df4cef6b52a30e65d472dd848d2055a1"
 | |
| Host: %HOSTIP:%HTTPPORT
 | |
| 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>
 |