R_OK
i = !access(short2str(ep), R_OK);
if (p && access(p, R_OK) == -1)
file = search(cp, search_path, R_OK, &err);
if ((fd = coproc_getfd(R_OK, &emsg)) < 0) {
else if ((fd = check_fd(cp, R_OK, &emsg)) < 0) {
return test_eaccess(opnd1, R_OK) == 0;
X_OK | ((iop->flag & IORDUP) ? R_OK : W_OK),
tp->u.fpath = search(name, fpath, R_OK,
(npath = search(name, fpath, R_OK,
(((mode & R_OK) && fl != O_RDONLY) ||
int fd = (mode & R_OK) ? coproc.read : coproc.write;
} else if (access(nm, R_OK | W_OK | X_OK) == -1) {
if ((access(name, R_OK | W_OK | X_OK) == -1) &&
return access(nm, R_OK) == 0;
if (access(datfile, R_OK) < 0) {
if (_nc_access(file, R_OK) >= 0
if (_nc_access(file, R_OK) >= 0
#ifndef R_OK
result = ACCESS(head, R_OK | W_OK | X_OK);
# define ACCESS(FN, MODE) access((FN), (MODE)&(R_OK|W_OK))
if (_nc_access(filename, R_OK) < 0
if (_nc_access(termpaths[i], R_OK) == 0
} else if ((_nc_access(db_array[current], R_OK) < 0)
if (_nc_access(temp, R_OK) == 0) {
&& _nc_access(path, R_OK) == 0) {
} else if (_nc_access(path, R_OK | W_OK | X_OK) < 0) {
if (access(search_dirs[i], R_OK) < 0)
static const int mode[4] = { R_OK, W_OK, X_OK, F_OK };
{ EACCES, 0, UID_YES, UID_NO, GID_NO, GID_NO, R_OK, w_w_exists },
{ EACCES, 0, UID_NO, UID_NO, GID_YES, GID_NO, R_OK, w_w_exists },
{ EACCES, 0, UID_YES, UID_NO, GID_YES, GID_NO, R_OK, w_w_exists },
{ EACCES, 1, UID_NO, UID_YES, GID_NO, GID_NO, R_OK, w_w_exists },
{ EACCES, 1, UID_NO, UID_NO, GID_NO, GID_YES, R_OK, w_w_exists },
{ EACCES, 0, UID_YES, UID_NO, GID_NO, GID_NO, R_OK, w_r_exists },
{ EACCES, 0, UID_NO, UID_NO, GID_YES, GID_NO, R_OK, r_w_exists },
{ EACCES, 1, UID_NO, UID_YES, GID_NO, GID_NO, R_OK, w_r_exists },
{ EACCES, 1, UID_NO, UID_NO, GID_NO, GID_YES, R_OK, r_w_exists },
{ EACCES, 0, UID_YES, UID_NO, GID_YES, GID_NO, R_OK, w_r_exists },
{ EACCES, 1, UID_NO, UID_YES, GID_NO, GID_YES, R_OK, w_r_exists },
{ EACCES, 0, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, w_r_exists },
{ EACCES, 1, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, w_r_exists },
{ 0, 0, UID_YES, UID_NO, GID_NO, GID_NO, R_OK, r_w_exists },
{ 0, 0, UID_NO, UID_NO, GID_YES, GID_NO, R_OK, w_r_exists },
{ 0, 0, UID_YES, UID_NO, GID_YES, GID_NO, R_OK, r_w_exists },
{ 0, 0, UID_YES, UID_NO, GID_YES, GID_NO, R_OK, r_r_exists },
{ 0, 1, UID_NO, UID_YES, GID_NO, GID_NO, R_OK, r_w_exists },
{ 0, 1, UID_NO, UID_NO, GID_NO, GID_YES, R_OK, w_r_exists },
{ 0, 1, UID_NO, UID_YES, GID_NO, GID_YES, R_OK, r_w_exists },
{ 0, 1, UID_NO, UID_YES, GID_NO, GID_YES, R_OK, r_r_exists },
{ 0, 0, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, r_w_exists },
{ 0, 0, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, r_r_exists },
{ 0, 1, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, r_w_exists },
{ 0, 1, UID_YES, UID_YES, GID_YES, GID_YES, R_OK, r_r_exists },
if (access(filename, R_OK) == 0)
UV_SHOULD_SUCCEED((access(filename, R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access(filename, R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access("poop", R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access("poop", R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access("../subdir1/poop", R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access(uv_file1, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access(uv_file2, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access("/etc/passwd", R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access(uv_dir1, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access(uv_dir2, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access("/", R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access(uv_file1, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access(uv_file2, R_OK) == -1), "access");
UV_SHOULD_SUCCEED((access(uv_dir1, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access(uv_dir2, R_OK) == -1), "access");
UV_SHOULD_ENOENT((access("/", R_OK) == -1), "access");
EXPECT_OK(access(".", R_OK | W_OK | X_OK));
EXPECT_OK(access("sub", R_OK | W_OK | X_OK));
EXPECT_ERRNO(access(mnt, R_OK), EACCES);
if (access(_PATH_RUNCOM, R_OK) != -1) {
if (access(_PATH_RC, R_OK) != -1) {
if (access(_PATH_RC, R_OK) != -1) {
if (amode & ~(R_OK | W_OK | X_OK))
if (amode & R_OK)
mpage->file, R_OK) == -1) {
if (access(curbp->b_fname, F_OK|R_OK) != 0) {
if ((access(dname, R_OK | X_OK)) == -1) {
if (access(name, R_OK) == -1 || stat(name, &stb) == -1) {
if (access("distfile", R_OK) == 0)
else if (access("Distfile", R_OK) == 0)
if (access(distfile, R_OK) != 0)
#ifndef R_OK
|| access(result, R_OK | W_OK) != 0) {
|| access(result, R_OK | W_OK | X_OK) != 0) {
&& access(result, R_OK | W_OK | X_OK) == 0) {
if (access(certdir, R_OK) == -1) {
if (access(chngdir, R_OK) == -1) {
if (access(file, X_OK|R_OK)) {
if (access(source, R_OK) == 0) {
if (access(file, X_OK | R_OK) == -1) {
if ((ret = faccessat(rootfd, path, R_OK, 0)) != -1)
if (access(src, R_OK) == 0) {
if (access(X509_get_default_cert_file(), R_OK) == 0)
uid, R_OK) == -1) {
uid, R_OK) == -1) {
aflags = R_OK | W_OK;
aflags = R_OK;
mode |= amode & R_OK ? S_IROTH : 0;
mode |= amode & R_OK ? S_IRUSR : 0;
mode |= amode & R_OK ? S_IRGRP : 0;