1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <testcase>
- # Redirection is used to force curl to realize that the server is
- # speaking HTTP 1.0. The request is impossible to satisfy with HTTP 1.0
- # because chunked encoding is unavailable, so the request must fail.
- <info>
- <keywords>
- HTTP
- HTTP PUT
- HTTP/1.0
- followlocation
- chunked Transfer-Encoding
- </keywords>
- </info>
- # Server-side
- <reply>
- <data>
- HTTP/1.0 301 Redirect swsclose
- Server: testcurl
- Content-Type: text/plain
- Location: /newlocation/%TESTNUMBER0002
- Content-Length: 0
- Connection: close
- </data>
- </reply>
- # Client-side
- <client>
- <server>
- http
- </server>
- <name>
- HTTP chunked PUT to HTTP 1.0 server with redirect
- </name>
- <command>
- http://%HOSTIP:%HTTPPORT/%TESTNUMBER -T - -L
- </command>
- <stdin>
- This is data we upload with PUT
- it comes from stdin so MUST be sent
- with chunked encoding
- which is impossible in HTTP/1.0
- </stdin>
- </client>
- # Verify data after the test has been "shot"
- <verify>
- <errorcode>
- 25
- </errorcode>
- <protocol>
- PUT /%TESTNUMBER HTTP/1.1
- Host: %HOSTIP:%HTTPPORT
- User-Agent: curl/%VERSION
- Accept: */*
- Transfer-Encoding: chunked
- Expect: 100-continue
- %if hyper
- 7A
- %else
- 7a
- %endif
- This is data we upload with PUT
- it comes from stdin so MUST be sent
- with chunked encoding
- which is impossible in HTTP/1.0
- 0
- </protocol>
- </verify>
- </testcase>
|