curl/tests/data/test138
Daniel Stenberg 7ea2e1d0c5
ftp: a 550 response to SIZE returns CURLE_REMOTE_FILE_NOT_FOUND
This is primarily interesting for cases where CURLOPT_NOBODY is set as
previously curl would not return an error for this case.

MDTM getting 550 now also returns this error (it returned
CURLE_FTP_COULDNT_RETR_FILE before) in order to unify return codes for
missing files across protocols and specific FTP commands.

libcurl already returns error on a 550 as a MDTM response (when
CURLOPT_FILETIME is set). If CURLOPT_NOBODY is not set, an error would
happen subsequently anyway since the RETR command would fail.

Add test 1913 and 1914 to verify. Updated several tests accordingly due
to the updated SIZE behavior.

Reported-by: Tomas Berger
Fixes #5953
Closes #5957
2020-09-14 12:53:12 +02:00

51 lines
627 B
Plaintext

<testcase>
<info>
<keywords>
FTP
RETR
</keywords>
</info>
# Server-side
<reply>
<data>
this is file contents
</data>
<size>
-1
</size>
<servercmd>
RETRNOSIZE
REPLY SIZE 500 command not understood
</servercmd>
</reply>
# Client-side
<client>
<server>
ftp
</server>
<name>
FTP download without size in RETR string and no SIZE command
</name>
<command>
ftp://%HOSTIP:%FTPPORT/blalbla/lululul/138
</command>
</client>
# Verify data after the test has been "shot"
<verify>
<protocol>
USER anonymous
PASS ftp@example.com
PWD
CWD blalbla
CWD lululul
EPSV
TYPE I
SIZE 138
RETR 138
QUIT
</protocol>
</verify>
</testcase>