FTP - Show hidden files

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

User avatar
ado
Senior Member
Senior Member
Posts: 445
Joined: 2003-02-18, 13:22 UTC
Location: Slovakia, Pezinok

Post by *ado »

well maybe those another programs are reading always full list of the files and then before showing them to the user filters out those hidden. I'd say for the unix platforms are hidden files those starting with dot and it is not difficult to find such files. I am not sure how it is with windows based FTP servers.
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

My guess is that most clients still use the old LIST command, so they don't have this problem. When/if they start using MLSD command, they'll have to solve the same thing.

If users really like hidden files, it would be best if MLSD specification included some fact for indicating that file is hidden. Unfortunately it doesn't, even though its authors showed such fact ("X.hidden"), but only as an example of possible custom extensions.
Some Windows FTP servers support another fact called "Win32.ea" which can hold hidden attribute. But there are only few of them and naturally, none of the Unix ones support it.
So there is definitely space for improvement on the MLSD and hidden files front.

Btw, this is what you get in FileZilla when you select "Force showing hidden files":
Note that this feature is only supported using the FTP protocol.
A proper server always shows all files, but some broken servers hide files from the user. Use this option to force the server to show all files.
Keep in mind that not all servers support this feature and may return incorrect listings if this option is enabled. Although FileZilla performs some tests to check if the server supports this feature, the test may fail.
Disable this option again if you will not be able to see the correct directory contents anymore.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48093
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

You can turn off MLSD for this server if it gives you problems. However, TC will then work like older TC versions (with LIST command), so it will have again the same problems with spaces in file names, time zone differences etc.
Author of Total Commander
https://www.ghisler.com
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

I tried unchecking the box for MLSD but the hidden files still showed no matter what the setting was for "show hidden files".
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

As I wrote earlier, it's not guaranteed that server understands hidden files at all. Some hide dot files when they receive "LIST" and need "LIST -la" to show all files. Some show all files with bare "LIST" without parameters. Some might not even understand "LIST -la" and may think that you want to list file named "-la".
But if it works for you in other clients, then it should be the same in TC without MLSD. Do you know what exact software the server uses? And what are those correctly working FTP clients?
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

Here is a small portion of the FTP log file:
SYST
215 UNIX Type: L8
FEAT
211-Extensions supported:
EPRT
IDLE
MDTM
SIZE
REST STREAM
MLST type*;size*;sizd*;modify*;UNIX.mode*;UNIX.uid*;UNIX.gid*;unique*;
MLSD
AUTH TLS
PBSZ
PROT
ESTA
PASV
EPSV
SPSV
ESTP
211 End.
HELP SITE
214-The following SITE commands are recognized
ALIAS
CHMOD
IDLE
UTIME
214 Pure-FTPd - http://pureftpd.org/
OPTS UTF8 ON
WinSCP and FileZilla both work right, IIRC.
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

So the server is Pure-FTPd. I just tried it and honestly, I don't have any idea what you're doing there. :)

WinSCP only uses LIST, so the hidden files switch works there.
FileZilla uses MLSD by default and in that mode always shows hidden (starting with dot) files. It'd have to be really old version without MLSD support to behave differently.
Turning MLSD off in TC also works fine and makes the hidden files switch work, when TC uses LIST.

Look for this part in the log:

Code: Select all

Get directory
PASV
227 Entering Passive Mode (x,x,x,x,x,x)
LIST -la
150 Accepted data connection
Download
Waiting for server...
226-Options: -a -l 
226 4 matches total
Depending on what fourth line is, the client should (and the "226-Options:" reply should say):
- "LIST": show only non-hidden files ("-l")
- "LIST -la": show all files ("-a -l")
- "MLSD": show all files ("-a -l")
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

Ok, here is what that line shows with the "hidden files" NOT checked and the MLSD box NOT checked:
Get directory
TYPE A
200 TYPE is now ASCII
PASV
227 Entering Passive Mode (xxx,xxx,xx,xxx,xxx,xx)
LIST
150 Accepted data connection
Download
Waiting for server...
226-Options: -a -l
226 8 matches total
QUIT
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

We're getting close to solving the mystery. :)
You see that server reports "226-Options: -a -l" (=> directory listing will contain all files), even when it got only bare "LIST" (=> no explicit request for hidden files). It is possible, because Pure-FTPd has an option to always show hidden files and it seems that your server has it enabled.
But it should affect WinSCP too, right? I catched few packets and looked at WinSCP source code and the answer is very simple. WinSCP gets the exact same directory listing with hidden files included. And then it handles hiding of dot files ifself. You turn them off and WinSCP filters out dot files from list.
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

Sounds logical. Maybe TC needs to work it that way if the server doesn't handle it.

And thank you for taking the time to work with me on this. I have learned a lot. ;)
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
jcp411
Junior Member
Junior Member
Posts: 2
Joined: 2010-05-03, 18:03 UTC
Location: Tucson, Arizona, USA

Post by *jcp411 »

(Just a regular user) If it's any encouragement to you all I'd love for this hidden file thing to be solved. I've been working to TC for years, love it but this past week realized we had issues because it couldn't see the .htaccess files a program was placing on a server and blocking our websites. So basically being able to see these files would be really nice otherwise I'm going to have to switch to another FTP program...

I hope to see it working soon! :)
jcp411
Junior Member
Junior Member
Posts: 2
Joined: 2010-05-03, 18:03 UTC
Location: Tucson, Arizona, USA

Post by *jcp411 »

Ok, so maybe it was my fault... I just discovered that the "show hidden files" is different from "FTP Show Hidden Files".

:oops:

[And no, I'm not using 7.55 but rather 7.50 ]

I'm sorry.
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

2jcp411,

No need to apologize, sir. I have made the same mistake myself in the past. And will probably do so again in another area of TC one of these days. ;)
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
Post Reply