Opened 2 years ago

Closed 2 years ago

#12591 closed Bug report (fixed)

Filezilla returns with "504 UTF8 mode cannot be disabled" when sending an "OPTS MLST type;size;modify;perm"

Reported by: Lothar Owned by: Fabio Alemagna
Priority: normal Component: FileZilla Server
Keywords: OPTS Cc: Lothar
Component version: 1.1.0 Operating system type:
Operating system version:

Description

My FTP-client is trying to connect to a FileZilla server 1.0.1 that is not under my control and runs into trouble when trying to find out if MLSD/MLST is supported by the server (this is done because there are servers out there announcing support in FEAT but actually can't). Here is a snippet from the trace:

*** Opened trace file at Wed Nov 24 13:06:12 CET 2021
<-- 220-FileZilla Server 1.0.1
<-- 220 Please visit https://filezilla-project.org/
[...]
Check UTF-8 support
---> FEAT
<-- 211-Features:
<--  MDTM
<--  REST STREAM
<--  SIZE
<--  MLST type*;size*;modify*;perm*;
<--  MLSD
<--  AUTH SSL
<--  AUTH TLS
<--  PROT
<--  PBSZ
<--  UTF8
<--  TVFS
<--  EPSV
<--  EPRT
<--  MFMT
<-- 211 End
Trying to switch to UTF-8 for control channel
---> OPTS UTF8 ON
<-- 202 UTF8 mode is always enabled. No need to send this command
Switch control channel to UTF-8
Check support for MLST/MLSD
MLST support is announced in features. Trying to set info-parts
---> OPTS MLST type;size;modify;perm
<-- 504 UTF8 mode cannot be disabled
Server answered MLST option request with an error, disabling feature
---> SYST
<-- 215 UNIX emulated by FileZilla.

The 504-answer lets the client fall back to use NLST which fails leading to a non-interop situation:

---> NLST *
<-- 450 No such file

So FileZilla is actually incapable of handling MLST and the error-message is wrong or there is some race condition leading to a 504 if an "OPTS UTF8 ON" is sent and another OPTS being followed directly afterwards.

Version 1.1.0 seems to have the same problem (the trace is done with 1.0.1 on the other side)

Change History (2)

comment:1 by Fabio Alemagna, 2 years ago

Owner: set to Fabio Alemagna
Status: newaccepted

Confirmed.

The faulty error message is due to a trivial typo, but the server currently doesn't support OPTS for MLST and would report an error anyway. Gonna implement that and get back to you.

comment:2 by Fabio Alemagna, 2 years ago

Operating system version: Windows 10
Resolution: fixed
Status: acceptedclosed

The issue has been fixed.

For our reference, this is the commit line:

[master 9dd0a12] Fixed a regression about MLST, which made it list more than it should have. Implemented OPTS MLST, which fixes #257.

You'll find the fix in the next night build, and officially in the next release.

Note: See TracTickets for help on using tickets.