Messages in this thread | | | Date | Sun, 1 Feb 2004 13:14:57 -0800 | From | Andrew Morton <> | Subject | Re: permission() bug? |
| |
Andreas Gruenbacher <agruen@suse.de> wrote: > > the fix for permission() that makes it compliant with POSIX.1-2001 > apparently was lost. Here is the patch I sent before. (The relevant > lines from the standard text are cited in > http://www.ussg.iu.edu/hypermail/linux/kernel/0310.2/0286.html. The fix > proposed in that posting did not handle directories without execute > permissions correctly.)
Question is: should we fix it? I'm not aware of any bug reports against this behaviour, and there is the possibility that changing it now will break some applications.
Yes, those applications are presumably broken on other OS's but that's different.
Given that this has been a longstanding misbehaviour in Linux (yes?) maybe the most prudent path is to remain bug-compatible?
I'll add the patch to -mm so we can pick up any obvious userspace breakage, but it is likely that such problems will take a long time to emerge.
> The access(2) function does not conform to POSIX.1-2001: For root > and a file with no permissions, access(file, MAY_READ|MAY_EXEC) > returns 0 (it should return -1).
So are you saying that in this case access() is, in effect, returning
access(file, MAY_READ) || access(file, MAY_EXEC)
whereas it should be returning
access(file, MAY_READ) && access(file, MAY_EXEC)
? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |