We are receiving error 550 while trying to download a file.
FEAT command says MLST is available, here's the log:
11:05:26.074 Info Response: 220 ProFTPD 1.3.4d Server ready.
11:05:26.105 Info Command: USER XXXXXX
11:05:26.230 Info Response: 331 Password required for XXXXXX
11:05:26.230 Info Command: PASS ******
11:05:26.511 Info Response: 230 User XXXXXX logged in
11:05:26.511 Info Command: FEAT
11:05:26.652 Info Response: 211-Features:
11:05:26.652 Info Response: MDTM
11:05:26.652 Info Response: MFMT
11:05:26.652 Info Response: TVFS
11:05:26.652 Info Response: MFF modify;UNIX.group;UNIX.mode;
11:05:26.652 Info Response: MLST modify;perm;size;type;unique;UNIX.group;UNIX.mode;UNIX.owner;
11:05:26.652 Info Response: REST STREAM
11:05:26.652 Info Response: SIZE
11:05:26.652 Info Response: 211 End
And this is what happens when trying to download/check a file:
11:07:08.590 Info Command: PWD
11:07:08.731 Info Response: 257 "/reports" is the current directory
11:07:08.731 Info Command: MLST "Test Test.txt"
11:07:08.887 Info Response: 550 '"Test Test.txt"' cannot be listed
11:07:08.887 Error Info: Rebex.Net.FtpException: Could not find source path ('/reports/Test Test.txt').
at Rebex.CH.UD(ZG A)
at Rebex.CH.AE(TransferAction A, YG B, String C, TransferMethod D, MoveMode E, LinkProcessingMode H, ActionOnExistingFiles I, ZG J)
at Rebex.Net.Ftp.WN(XG A, String B, TransferMethod C, MoveMode D, LinkProcessingMode E, ActionOnExistingFiles H)
Shouldn't the server understand the MLST command if it's in the FEAT list? Right now I don't really know what I can tell our customer - is their server configuration wrong or is it a problem caused by the Rebex library? We use version 2014 R2.
Edit: It works if there are no spaces in file names, e.g. 'Test.txt' can be checked with MLST and can be downloaded.