Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
access(2)		      System Calls Manual		     access(2)

NAME
       access -	determine accessibility	of a file

SYNOPSIS
DESCRIPTION
       The  system  call  checks the file pointed to by	path for accessibility
       according to the	bit pattern contained in amode.	 uses  the  real  user
       ID, not the effective user ID, and the real group ID, not the effective
       group ID.

       The value of amode is either the	bit-wise inclusive OR  of  the	access
       permissions to be checked, or the existence test.  You can use the fol-
       lowing symbolic constants, defined in to	test for permissions:

	      Read access
	      Write access
	      Execute (search) access
	      Check existence of file

       The owner of a file has permission checked with respect to  the	"user"
       read,  write, and execute mode bits.  Members of	the file's group other
       than the	owner have permissions checked with  respect  to  the  "group"
       mode  bits.   All  others  have permissions checked with	respect	to the
       "other" mode bits.

       If a file is currently open for	execution,  reports  that  it  is  not
       writable, regardless of the setting of its mode.

   Access Control Lists	- HFS File Systems Only
       Read,  write,  and  execute/search  permissions are checked against the
       file's access control list (ACL).   Each	 mode  is  checked  separately
       since  different	ACL entries can	grant different	permissions.  The real
       user ID is combined with	the process's real group ID and	each group  in
       its  supplementary groups list, and the access control list is searched
       for a match.  Search proceeds in	order of specificity and ends when one
       or  more	matching entries are found at a	specific level.	 More than one
       or entry	can match a user if that  user	has  a	nonnull	 supplementary
       groups  list.  If any matching entry has	the appropriate	permission bit
       set, access is permitted.

   Access Control Lists	- JFS File Systems Only
       Read, write, and	execute/search permissions  are	 checked  against  the
       file's  access  control	list (ACL).  The real user ID is combined with
       the process's real group	ID and each group in its supplementary	groups
       list, and the access control list is searched for a match.  Search pro-
       ceeds in	order of ACL entries and ends when the	first  entry  matching
       the user	ID or any of the group IDs is encountered.

       If  a shared text file is currently open	for execution, reports that it
       is not writable,	regardless of its access control list.	However,  does
       not  report that	a shared text file open	for writing is not executable,
       since the check is not easily done.

       It also reports that a file on a	read-only file system is not writable.

RETURN VALUE
       returns the following values:

	      Successful completion.
		     The requested access is permitted.

		     If	the path is valid and the real user ID	is  superuser,
		     always  returns 0,	except when amode includes the path is
		     not a directory, and none of the execute bits are set  in
		     the file's	mode.

	      Failure.
		     is	set to indicate	the error.

ERRORS
       If fails, is set	to one of the following	values.

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

	      [EACCES]	     The access	control	list does not permit  the  re-
			     quested access and	the real user ID is not	a user
			     with appropriate privileges.

	      [EFAULT]	     path points outside the allocated	address	 space
			     for  the process.	The reliable detection of this
			     error is implementation dependent.

	      [ELOOP]	     Too  many	symbolic  links	 were  encountered  in
			     translating the path name.

	      [ENAMETOOLONG] The  length  of  the  specified path name exceeds
			     bytes, or the length of a component of  the  path
			     name exceeds bytes	while is in effect.

	      [ENOENT]	     Read,  write,  or	execute	(search) permission is
			     requested for a null path name.

	      [ENOENT]	     The named file does not exist.

	      [ENOTDIR]	     A component of the	path prefix is	not  a	direc-
			     tory.

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

	      [ETXTBSY]	     Write access is requested for  a  pure  procedure
			     (shared text) file	that is	being executed.

SEE ALSO
       acl(2), chmod(2), stat(2), setacl(2), acl(5), aclv(5), unistd(5).

STANDARDS CONFORMANCE
								     access(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | SEE ALSO | STANDARDS CONFORMANCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=access&sektion=2&manpath=HP-UX+11.22>

home | help