[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17330: files.el cd-absolute overcome false negative from file-execut

From: Philip Hodges
Subject: bug#17330: files.el cd-absolute overcome false negative from file-executable-p
Date: Sun, 4 May 2014 15:24:35 +0200

I came across a post that confirms my suspicions that:
- the _stat st_mode bits really cannot be trusted to give a meaningful answer, 
no matter whether it comes from Windows or cygwin.
- it is not worth calling GetFileSecurity (which is what I meant by "something 
like GetFileAttributes" *) and trying to reproduce the interpretation of the 
ACL information
- the best way is to find out if searching a directory will succeed really is 
to actually try it


> ... somewhere between hard and impossible to reproduce ...
To reproduce on any platform, simply change check_executable to *always* return 
false. The easiest way to test what happens with false negatives is to have 
negatives all the time.

The more I read about it and think about it, the more I stand by my original 
change suggestion: tell the user that the directory might not be searchable, 
ask them if they want to go ahead and try it anyway. And also ask if they 
always want to do that, in case the question appears so often that it becomes 
annoying. I think we have to accept and work with what we have got instead of 
punishing users until such time as every possible combination of filesystem and 
library methods can be upgraded in a way that might not even be practical for 
many of them.

Surely the worst that can happen is that it becomes easier to end up with a 
buffer whose current directory really is not searchable, or file changes that 
cannot be saved in the original location. Good to avoid, but not vital. Rather 
that than being completely denied the use of a feature such as 
ediff-directories that would actually work.

Much of what was written for #10257 (writeable) applies to this #17330 
(searchable directory) and vice versa. So if we are only comfortable with just 
treating a -1 uid or gid specially here too, well it is not a general solution, 
but better than no change at all. Having just the default entries in the passwd 
file hasn't been causing me any other noticeable trouble.

[*) If I have mixed up any other detail such as which conditional compiling 
macros are defined to choose between euidaccess and stat or _stat in which 
builds, or misreported something observed on a system that is not in front of 
me at that moment, please forgive me.]

reply via email to

[Prev in Thread] Current Thread [Next in Thread]