directory without search permission is searchable?

Thomas Wolff towo@towo.net
Wed Feb 26 07:42:00 GMT 2020


Am 26.02.2020 um 06:29 schrieb Jun T:
> It seems 'ls -l dir/file' or 'stat dir/file' succeeds even if
> I don't have read/search permission for the 'dir'.
>
> Create a directory and a file in it:
>
> $ mkdir tmpdir
> $ ls -ld tmpdir
> drwxr-xr-x+ 1 takimoto none 0 Feb 26 12:46 tmpdir
> $ touch tmpdir/afile
> $ ls -l tmpdir/afile
> -rw-r--r-- 1 takimoto 0 none Feb 26 12:46 tmpdir/afile
>
> Remove all permissions from tmpdir:
>
> $ chmod 0000 tmpdir
> $ ls -ld tmpdir
> d---------+ 1 takimoto none 0 Feb 26 12:46 tmpdir
> $ getfacl tmpdir
> # file: tmpdir
> # owner: takimoto
> # group: none
> user::---
> group::---
> other::---
> default:user::rwx
> default:group::r-x
> default:other::r-x
>
> This fails as expected:
>
> $ ls -l tmpdir
> ls: cannot open directory 'tmpdir': Permission denied
>
> But the followings succeed (should fail, I believe):
>
> $ ls -l tmpdir/afile
> -rw-r--r-- 1 takimoto none 0 Feb 26 12:46 tmpdir/afile
> $ stat tmpdir/afile
>    File: tmpdir/afile
>    Size: 0               Blocks: 0          IO Block: 65536  regular empty file
> Device: d05d00abh/3495755947d   Inode: 14636698789089092  Links: 1
> Access: (0644/-rw-r--r--)  Uid: (197609/takimoto)   Gid: (197121/  none)
> Access: 2020-02-26 12:46:12.478966400 +0900
> Modify: 2020-02-26 12:46:12.478966400 +0900
> Change: 2020-02-26 12:46:12.464849300 +0900
>   Birth: 2020-02-26 12:46:12.464849300 +0900
>
> Does this happen only for me?
To confirm, I noticed this before.

> Should I set some ACL properly?
>
> I removed default ACL from tmpdir but the results are the same.
>
> I confirmed (by a simple C code) that the stat(3p) system call
> (or library function) succeeds for 'tmpdir/afile'.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list