[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
http://stackoverflow.com/questions/3449465/find-the-permissions-of-a-file-in-windows
> ... 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.]
- bug#17330: thanks for the comments, Philip Hodges, 2014/05/03
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p,
Philip Hodges <=
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p, Eli Zaretskii, 2014/05/04
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p, Eli Zaretskii, 2014/05/06
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p, Stefan Monnier, 2014/05/06
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p, Glenn Morris, 2014/05/06
- bug#17330: files.el cd-absolute overcome false negative from file-executable-p, Philip Hodges, 2014/05/11