vfs: make O_PATH file descriptors usable for 'fchdir()'
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 7 Jul 2012 17:17:00 +0000 (10:17 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 12 Jul 2012 03:32:20 +0000 (04:32 +0100)
commitf6d2d473ca73cb30cf25a6940b1dff3cc78b513f
tree315b4ade7e8aac8e6dccf3f370e22d3d0a7cd10a
parent90f81e29765bd976bf083b239ad04e7f64ab5269
vfs: make O_PATH file descriptors usable for 'fchdir()'

commit 332a2e1244bd08b9e3ecd378028513396a004a24 upstream.

We already use them for openat() and friends, but fchdir() also wants to
be able to use O_PATH file descriptors.  This should make it comparable
to the O_SEARCH of Solaris.  In particular, O_PATH allows you to access
(not-quite-open) a directory you don't have read persmission to, only
execute permission.

Noticed during development of multithread support for ksh93.

Reported-by: ольга крыжановская <olga.kryzhanovska@gmail.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/open.c