aboutsummaryrefslogtreecommitdiffstats
path: root/man2/access.2
diff options
context:
space:
mode:
authorMichael Kerrisk <mtk.manpages@gmail.com>2014-05-16 11:09:45 +0200
committerMichael Kerrisk <mtk.manpages@gmail.com>2014-08-18 17:01:47 -0500
commitcf81f364e898fe060dd914c255244dc5857be294 (patch)
treece960a18e9fa3751b3c64a3556302b2f259e6dfb /man2/access.2
parentc71a9ed732d3b22fd64ac6dbfd2dcc4e22cb5429 (diff)
downloadman-pages-cf81f364e898fe060dd914c255244dc5857be294.tar.gz
access.2: Glibc falls back to using access() on kernels that lack faccessat()
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Diffstat (limited to 'man2/access.2')
-rw-r--r--man2/access.218
1 files changed, 18 insertions, 0 deletions
diff --git a/man2/access.2 b/man2/access.2
index 5938fc9ad2..fe0ce5b9a4 100644
--- a/man2/access.2
+++ b/man2/access.2
@@ -336,6 +336,24 @@ flags are actually implemented within the glibc wrapper function for
If either of these flags is specified, then the wrapper function employs
.BR fstatat (2)
to determine access permissions.
+.SS Glibc notes
+On older kernels where
+.BR faccessat ()
+is unavailable (and when the
+.B AT_EACCESS
+and
+.B AT_SYMLINK_NOFOLLOW
+flags are not specified),
+the glibc wrapper function falls back to the use of
+.BR access ().
+When
+.I pathname
+is a relative pathname,
+glibc constructs a pathname based on the symbolic link in
+.IR /proc/self/fd
+that corresponds to the
+.IR dirfd
+argument.
.SH BUGS
In kernel 2.4 (and earlier) there is some strangeness in the handling of
.B X_OK