Opened 14 years ago

Last modified 13 years ago

#942 closed Bug report

CLNT detection failed with RaidenFTPD

Reported by: sfyang Owned by:
Priority: normal Component: FileZilla Client
Keywords: Cc: sfyang, Tim Kosse
Component version: Operating system type:
Operating system version:

Description

RaidenFTPD is one of the ftp client that requires CLNT
before OPT UTF8 ON. However, the CLNT detection on FZ
v2.2.15 fails to detect the CLNT requirement since the
reponse of RaidenFTPD is something like:

Send: FEAT
Trace: FtpControlSocket.cpp(744): OnReceive(0)
OpMode=1 OpState=-13 caller=0x00a8e774
Respond: 211-Extensions supported:
Respond: SIZE
Respond: MDTM
Respond: MDTM YYYYMMDDHHMMSS filename
Respond: LIST -laT
Respond: STAT -laT
Respond: MODE Z
Respond: MLST
type*;lang*;size*;modify*;create*;UNIX.mode*;UNIX.owner*;UNIX.group*;WIN32.ea*
Respond: MLSD
Respond: REST STREAM
Respond: XCRC filename;start;end
Respond: XMD5 filename;start;end
Respond: TVFS
Respond: CLNT client_type
Respond: LANG EN;FR;JA;DE;IT;SV;ES;RU;ZH-TW;ZH-CN
Respond: UTF8
Respond: EPRT
Respond: EPSV
Respond: 211 END
Send: OPTS UTF8 ON
Trace: FtpControlSocket.cpp(744): OnReceive(0)
OpMode=1 OpState=-15 caller=0x00a8e774
Respond: 500 Send 'CLNT client_type' before enabling UTF8.
Send: SYST
Trace: FtpControlSocket.cpp(744): OnReceive(0)
OpMode=1 OpState=-14 caller=0x00a8e774
Respond: 215 UNIX Type: L8 , CP:950

That is, there is a single quote mark "'" (ASCII 0x27)
prefixing the CLNT string such that
CFtpControlSocket::DiscardLine method defined in
FtpControlSocket.cpp could not catch that and not set
'm_hasClntCmd' to be 'true'.

The attachment is a small patch that adds " 'CLNT" and
" \"CLNT" pattern into the
CFtpControlSocket::DiscardLine. I'm not sure it will
work since I have no VC++ to rebuild on my box. ;-)

Change History (2)

comment:1 Changed 14 years ago by sfyang

Sorry for the wrong patch. After I checked the source and
log again, the patch is not correct.

comment:2 Changed 13 years ago by Tim Kosse

Should be fixed in most recent FZ2 and definitely fixed in FZ3 beta.

Note: See TracTickets for help on using tickets.