Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ access(2) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chmod(2)

intro(2)

stat(2)






       access(2)                                                  access(2)


       NAME
             access - determine accessibility of a file

       SYNOPSIS
             #include <unistd.h>
             int access(const char *path, int amode);

       DESCRIPTION
             access checks the accessibility of a file.  path points to a
             pathname naming a file.  access checks the named file for
             accessibility according to the bit pattern contained in amode,
             using the real user ID in place of the effective user ID and
             the real group ID in place of the effective group ID. The bit
             pattern contained in amode is constructed by an OR of the
             following constants (defined in unistd.h):

            R_OK    test for read permission

            W_OK    test for write permission

            X_OK    test for execute (search) permission

            F_OK    test for existence of file

            EX_OK   test for regular, executable file

            EFF_ONLY_OK
                     test using effective IDs

             Note that successful checking of the EXEC_OK file does not
             imply that the exec(2) system call will succeed on the file
             named by path, since the check succeeds if at least one
             execute bit is set;  there are also additional checks made for
             execute permission by exec.

          Return Values
             If the requested access is permitted, access returns 0.
             Otherwise, access returns -1 and sets errno to identify the
             reason.

          Errors
             In the following conditions, access sets errno to:

            EACCES Search permission is denied on a component of the path
                    prefix.



                           Copyright 1994 Novell, Inc.               Page 1













      access(2)                                                  access(2)


           EACCES Access permission is denied.

           EACCES The file is not a regular file.

           EFAULT path points outside the allocated address space for the
                   process.

           EINTR  A signal was caught during the access system call.

           EINVAL amode is invalid.

           ELOOP  Too many symbolic links were encountered in translating
                   path.

           EMULTIHOP
                   Components of path require hopping to multiple remote
                   machines.

           ENAMETOOLONG
                   The length of the path argument exceeds {PATH_MAX}, or
                   the length of a path component exceeds {NAME_MAX} while
                   _POSIX_NO_TRUNC is in effect.

           ENOTDIR
                   A component of the path prefix is not a directory.

           ENOENT Read, write, or execute (search) permission is requested
                   for a null pathname.

           ENOENT The named file does not exist.

           ENOLINK
                   path points to a remote machine and the link to that
                   machine is no longer active.

           EROFS  Write access is requested for a file on a read-only file
                   system.

      REFERENCES
            chmod(2), intro(2), stat(2)

      NOTICES
         Considerations for Threads Programming
            Access rights are an attribute of the containing process and
            are shared by sibling threads.



                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026