Bug report #1078066: when a chunked transfer was pre-maturely closed exactly

at a chunk boundary it was not considered an error and thus went unnoticed.
Added test case 207 to verify.
This commit is contained in:
Daniel Stenberg 2004-12-03 09:31:25 +00:00
parent 6ac9e67bd7
commit 2c27e4ee76
5 changed files with 88 additions and 5 deletions

View file

@ -29,7 +29,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \
test184 test185 test186 test187 test188 test189 test191 test192 \
test193 test194 test195 test196 test197 test198 test515 test516 \
test517 test518 test210 test211 test212 test220 test221 test222 \
test223 test224 test206
test223 test224 test206 test207
# The following tests have been removed from the dist since they no longer
# work. We need to fix the test suite's FTPS server first, then bring them

57
tests/data/test207 Normal file
View file

@ -0,0 +1,57 @@
#
# Server-side
<reply>
<data>
HTTP/1.1 200 funky chunky! swsclose
Server: fakeit/0.9 fakeitbad/1.0
Transfer-Encoding: chunked
Connection: mooo
41
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</data>
<datacheck>
HTTP/1.1 200 funky chunky! swsclose
Server: fakeit/0.9 fakeitbad/1.0
Transfer-Encoding: chunked
Connection: mooo
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</datacheck>
</reply>
#
# Client-side
<client>
<server>
http
</server>
<name>
HTTP GET with chunked Transfer-Encoding closed pre-maturely
</name>
<command>
http://%HOSTIP:%HTTPPORT/207
</command>
</test>
#
# Verify data after the test has been "shot"
<verify>
<strip>
^User-Agent:.*
</strip>
<protocol>
GET /207 HTTP/1.1
Host: 127.0.0.1:%HTTPPORT
Pragma: no-cache
Accept: */*
</protocol>
# curl: (18) transfer closed with outstanding read data remaining
# 18 == CURLE_PARTIAL_FILE
<errorcode>
18
</errorcode>
</verify>