From d15b99ac5af661dba1303f17a01f09aae7b6f5e7 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Fri, 6 Jan 2006 12:14:26 +0000 Subject: * io/fcntl.h [__USE_ATFILE] (AT_EACCESS): New macro. * posix/unistd.h [__USE_ATFILE]: Declare faccessat. * io/faccessat.c: New file. * sysdeps/unix/sysv/linux/faccessat.c: New file. * io/Makefile (routines): Add faccessat. * io/Versions (libc: GLIBC_2.4): Likewise. * io/tst-faccessat.c: New file. * io/Makefile (tests): Add it. * io/sys/stat.h: Likewise. --- posix/unistd.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'posix/unistd.h') diff --git a/posix/unistd.h b/posix/unistd.h index 1bf843c..acb8f6f 100644 --- a/posix/unistd.h +++ b/posix/unistd.h @@ -266,6 +266,14 @@ extern int eaccess (__const char *__name, int __type) __THROW __nonnull ((1)); #endif +#ifdef __USE_ATFILE +/* Test for access to FILE relative to the directory FD is open on. + If AT_EACCESS is set in FLAG, then use effective IDs like `eaccess', + otherwise use real IDs like `access'. */ +extern int faccessat (int __fd, __const char *__file, int __type, int __flag) + __THROW __nonnull ((2)) __wur; +#endif /* Use GNU. */ + /* Values for the WHENCE argument to lseek. */ #ifndef _STDIO_H /* has the same definitions. */ -- cgit v1.1