curl/tests/data/test236
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

54 lines
819 B
Plaintext

<testcase>
<info>
<keywords>
FTP
</keywords>
</info>
# Server-side
<reply>
<servercmd>
REPLY SIZE 550 access to this file is very much denied
REPLY APPE 550 I said: access to this file is very much denied
REPLY STOR 550 I said: access to this file is very much denied
REPLY SIZE 500 command not understood
</servercmd>
</reply>
# Client-side
<client>
<server>
ftp
</server>
<name>
FTP resume upload but denied access to remote file
</name>
<command>
ftp://%HOSTIP:%FTPPORT/236 -T log/file236.txt -C -
</command>
<file name="log/file236.txt">
Test data
</file>
</client>
# Verify data after the test has been "shot"
<verify>
<protocol>
USER anonymous
PASS ftp@example.com
PWD
EPSV
TYPE I
SIZE 236
STOR 236
QUIT
</protocol>
# (25) Failed FTP upload: 550
<errorcode>
25
</errorcode>
</verify>
</testcase>