EUIDACCESS - Linux手册页

时间:2019-08-20 18:00:09  来源:igfitidea点击:

Linux程序员手册 第3部分
更新日期: 2017-09-15

名称

euidaccess,eaccess-检查文件的有效用户权限

语法

#define _GNU_SOURCE             /* See feature_test_macros(7) */
#include <unistd.h>

int euidaccess(const char *pathname, int mode);
int eaccess(const char *pathname, int mode);

说明

access(2)一样,euidaccess()检查权限和是否存在由其参数路径名标识的文件。但是,access(2)使用进程的真实用户和组标识符执行检查,而euidaccess()使用有效标识符。

模式是由R_OKW_OK,X_OK和F_OK中的一个或多个组成的掩码,其含义与access(2)相同。

eaccess()是euidaccess()的同义词,旨在与某些其他系统兼容。

返回值

成功(授予所有请求的权限)后,将返回零。如果发生错误(在模式下至少一位请求拒绝权限,或者发生了其他错误),则返回-1,并正确设置errno。

错误说明

至于access(2)。

版本

eaccess()函数已在2.4版中添加到glibc。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
euidaccess(),eaccess()Thread safetyMT-Safe

遵循规范

这些功能是非标准的。其他一些系统具有eaccess()函数。

备注

警告:在基于该信息执行某些操作之前,使用此功能检查进程对文件的权限会导致争用情况:文件权限可能会在两个步骤之间更改。通常,尝试进行所需的操作并处理发生的任何权限错误是更安全的。

此函数始终取消引用符号链接。如果需要检查符号链接的权限,请将faccessat(2)与标志AT_EACCESS和AT_SYMLINK_NOFOLLOW一起使用。

另外参见

access(2),chmod(2),chown(2),faccessat(2),open(2),setgid(2),setuid(2),stat(2),凭据(7),path_resolution(7)

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/