TC 7.55pb1 - FTP doesn't follow symbolic link into dir

The behaviour described in the bug report is either by design, or would be far too complex/time-consuming to be changed

Moderators: white, Hacker, petermad, Stefan2

Post Reply
Mercade
Junior Member
Junior Member
Posts: 31
Joined: 2003-07-20, 17:51 UTC

TC 7.55pb1 - FTP doesn't follow symbolic link into dir

Post by *Mercade »

On a Ubuntu server a custom Python FTP server gives access. To connect to this server I use passive mode.
There's a link created with: ln -s /foobar thus showing the foobar directory in my home dir ~mercade.
In TC 7.50a while in FTP it shows the link with the big arrow icon and I can double-click on it and goes to ~mercade/foobar allowing me to access the dir.
In TC 7.55pb1 it won't show the link icon and also doesn't allow me to double-click on it.

Edit: When I forcefully switch off the MLSD, it works correctly. Perhaps the server incorrectly claims to understand MLSD ...

SYST
215 UNIX Type: L8
FEAT
211-Extensions-supported:
SIZE
MDTM
PASV
MLST Size*;Type*;Modify*;Unique*;Perm*;
MLSD
211 END
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

You should be able to follow the link. Try to right-click on the file list and select Properties from menu. The raw MLSD listing should open in Lister. Find the line(s) about foobar and post it/them here. Maybe it can show what's wrong.

As for the link icon, I'm affraid it's not a bug, but a feature/limitation of MLSD. I read RFC 3659 where MLSD is defined and links are not included in basic file types. There is a way how to include info about links (https://tools.ietf.org/html/rfc3659#section-7.7.4) but it's not mandatory. So not all servers support it, e.g. ProFTPd doesn't. And if it wasn't enough, errdata says that this way is completely wrong (http://www.rfc-editor.org/errata_search.php?rfc=3659&eid=1500).
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Indeed older servers do not report symlinks in MLSD. The optimum would be to know just the type of link (to a file or to a folder), the link target name isn't really needed...
Author of Total Commander
https://www.ghisler.com
Mercade
Junior Member
Junior Member
Posts: 31
Joined: 2003-07-20, 17:51 UTC

Post by *Mercade »

With MLSD set to off, I get:

lrwxrwxrwx 1 mercade mercade 15 Apr 04 16:17 foobar

With MLSD set to greyed, I get:

Type=file;Size=15;Modify=20100404141741;Unique=729702;Perm=radfw; foobar

Clearly the "Type=file" isn't "Type=OS.unix=slink" as suggested in the RFC. Whether or not it's mandatory, I'll poke the author of said python ftp server and see if I can get it included.

Thanks for the feedback.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Thanks, hopefully he will support it!
Author of Total Commander
https://www.ghisler.com
Post Reply