PDA

View Full Version : Error parsing folder listing for some utf8 word


twu2
14-Nov-2011, 07:13 PM
when the server don't support MLST command (vsftpd), it will use LIST command to retrieve the file list like this:

2011/11/15 上午 09:47:15 Sent> LIST
2011/11/15 上午 09:47:15 Recv> 150 Here comes the directory listing.
2011/11/15 上午 09:47:15 Recv> 226 Directory send OK.
2011/11/15 上午 09:47:15 drwxrwxr-x 2 0 0 4096 Jan 24 2011 Discovery
2011/11/15 上午 09:47:15 drwxrwxr-x 2 0 0 4096 Jan 01 01:45 日劇
2011/11/15 上午 09:47:15 FTP ParserID: Unix
2011/11/15 上午 09:47:15 Unable to load ftp://root@192.168.0.80/sda1: Error parsing folder listing


it can't parse the '日劇' (in fact, it can't parse '日') here.

but same filename work fine when the server support MLST like this:
2011/11/15 上午 09:51:09 Sent> MLSD
2011/11/15 上午 09:51:09 Recv> 150 Accepted data connection
2011/11/15 上午 09:51:09 Recv> 226-Options: -a -l
2011/11/15 上午 09:51:09 226 13 matches total
2011/11/15 上午 09:51:09 type=cdir;sizd=4096;modify=20111115010853;UNIX.mod e=0755;UNIX.uid=1000;UNIX.gid=100;unique=900g80b; .
2011/11/15 上午 09:51:09 type=pdir;sizd=101;modify=20111114080719;UNIX.mode =0750;UNIX.uid=1000;UNIX.gid=65534;unique=900g804; ..
2011/11/15 上午 09:51:09 type=dir;sizd=144;modify=20110124085516;UNIX.mode= 0775;UNIX.uid=1000;UNIX.gid=100;unique=900g8339b88 7; Discovery
2011/11/15 上午 09:51:09 type=dir;sizd=8192;modify=20111111085011;UNIX.mode =0775;UNIX.uid=1000;UNIX.gid=100;unique=900g692c; 日劇
2011/11/15 上午 09:51:09 FTP ParserID: MLST


there's something wrong in ParserID: Unix for UTF-8 word '日'.

Craig
15-Nov-2011, 01:51 PM
Thanks, we'll have this fixed in an upcoming release. Some servers add the 日, 月, and 年 characters to the date strings, so we have to accept them as part of that. I've tightened up the parser so it should accept all three in filenames going forward.