svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
acl(2)
acl(2) System Calls acl(2)
NAME
acl, facl - get or set a file's Access Control List (ACL)
SYNOPSIS
#include <sys/acl.h>
int acl(char *pathp, int cmd, int nentries, void *aclbufp);
int facl(int fildes, int cmd, int nentries, void *aclbufp);
DESCRIPTION
The acl() and facl() functions get or set the Access Control List (ACL)
of a file whose name is given by pathp or referenced by the open file
descriptor fildes. The nentries argument specifies how many ACL entries
fit into buffer aclbufp.
The following types are supported for aclbufp:
aclent_t Used by the UFS and NFS file systems.
ace_t Used by the ZFS and NFSv4 file systems.
These types are described in more detail in the acl(7) manual page.
The following values for cmd are supported:
SETACL nentries aclent_t ACL entries, specified in buffer
aclbufp, are stored in the file's ACL. All directories
in the path name must be searchable.
GETACL Buffer aclbufp is filled with the file's aclent_t ACL
entries. Read access to the file is not required, but
all directories in the path name must be searchable.
GETACLCNT The number of entries in the file's aclent_t ACL is
returned. Read access to the file is not required, but
all directories in the path name must be searchable.
ACE_SETACL nentries ace_t ACL entries, specified in buffer
aclbufp, are stored in the file's ACL. All directories
in the path name must be searchable. Write ACL access
is required to change the file's ACL.
ACE_GETACL Buffer aclbufp is filled with the file's ace_t ACL en‐
tries. Read access to the file is required and all di‐
rectories in the path name must be searchable.
ACE_GETACLCNT The number of entries in the file's ace_t ACL is re‐
turned. Read access to the file is required and all
directories in the path name must be searchable.
RETURN VALUES
If cmd is SETACL or ACE_SETACL, 0 is returned upon successful comple‐
tion. If cmd is GETACL, GETACLCNT, ACE_GETACL or ACE_GETACLCNT, the
number of ACL entries is returned upon successful completion. Other‐
wise, −1 is returned and errno is set to indicate the error.
ERRORS
The acl() and facl() functions will fail if:
EACCES The caller does not have access to a component of the path‐
name; the cmd argument is ACE_SETACL or SETACL and the
caller does not have appropriate privilege to set one or
more specified ACE types.
EBADF The filedes argument is not a valid open file descriptor.
EFAULT The pathp or aclbufp argument points to an illegal address.
EINVAL The cmd argument is not one of the values listed above; the
cmd argument is SETACL and nentries is less than 3; or the
cmd argument is SETACL or ACE_SETACL and the ACL specified
in aclbufp is not valid.
EIO A disk I/O error has occurred while storing or retrieving
the ACL.
ENOENT A component of the path does not exist.
ENOSPC The cmd argument is GETACL and nentries is less than the
number of entries in the file's ACL, or the cmd argument is
SETACL and there is insufficient space in the file system to
store the ACL.
ENOSYS The cmd argument is SETACL or ACE_SETACL and the file speci‐
fied by pathp resides on a file system that does not support
ACLs.
ENOTDIR A component of the path specified by pathp is not a direc‐
tory, or the cmd argument is SETACL or ACE_SETACL and an at‐
tempt is made to set a default ACL on a file type other than
a directory.
ENOTSUP The cmd argument is GETACL, but the ACL is composed of ace_t
entries, and the ACL cannot be translated into aclent_t
form.
The cmd argument is ACE_SETACL, but the underlying filesys‐
tem only supports ACLs composed of aclent_t entries and the
ACL could not be translated into aclent_t form.
EPERM The effective user ID does not match the owner of the file
and the process does not have appropriate privilege.
The file has one or more of the immutable or rtime system
attributes set.
EROFS The cmd argument is SETACL or ACE_SETACL and the file speci‐
fied by pathp resides on a file system that is mounted read-
only.
USAGE
To determine which types of ACL, if any, are supported with a given
file, use the pathconf(2) and fpathconf(2) functions with a value of
_PC_ACL_ENABLED for their name argument.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Interface StabilityCommitted
SEE ALSO
fpathconf(2), pathconf(2), aclcheck(3SEC), aclsort(3SEC), acl(7),
sysattr(7)
HISTORY
The ace_t type, and the corresponding ACE_* values for cmd, were added
to Oracle Solaris in Solaris 10 3/05.
The acl() and facl() functions and aclent_t type were added to Solaris
in Solaris 2.5.
Oracle Solaris 11.4 30 Jan 2023 acl(2)