HP-UX Reference (11i v2 04/09) - 2 System Calls (vol 5)

a
acl(2) acl(2)
Entries of type USER, GROUP,
DEF_USER,orDEF_GROUP do not contain duplicate entries. A
duplicate entry is one of the same type containing the same numeric ID.
If the ACL contains no entries of type
USER and no entries of type GROUP, then the entries of type
GROUP_OBJ and CLASS_OBJ have the same permissions.
If the ACL contains no entries of type
DEF_USER and no entries of type DEF_GROUP, and an entry
of type
DEF_GROUP_OBJ
is specified, then an entry of type DEF_CLASS_OBJ
is also specified
and the two entries have the same permissions.
RETURN VALUE
On success,
acl() returns the number of ACL entries for cmd
ACL_CNT and ACL_GET, and 0 for cmd
ACL_SET. On failure, acl() returns -1 and sets
errno to identify the error.
ERRORS
If
acl() fails, the ACL is unchanged, and
errno is set to one of the following values:
EACCES The caller does not have access to a component of the pathname.
EINVAL cmd is not ACL_GET, ACL_SET
,orACL_CNT.
EINVAL cmd is ACL_SET and nentries is less than the number of mandatory ACL entries (4).
EINVAL cmd is ACL_SET and the ACL specified in aclbufp is not valid [see above dicussion, and
aclsort (3C)].
EIO A disk I/O error has occurred while storing or retrieving the ACL.
EPERM cmd is ACL_SET and the effective user ID of the caller does not match the owner of the file,
and the caller is not the superuser.
ENOENT A component of the path does not exist.
ENOSPC cmd is ACL_GET and nentries is less than the number of entries in the file’s ACL.
ENOSPC cmd is ACL_SET and there is insufficient space to store the ACL.
ENOSPC cmd is ACL_SET and nentries is greater than NACLVENTRIES, which is defined in
<sys/aclv.h>.
ENOTDIR A component of the path specified by pathp is not a directory.
ENOTDIR cmd is ACL_SET and an attempt is made to set a default ACL on a file type other than a
directory.
ENOSYS cmd is ACL_SET, the file specified by pathp resides on a local non-JFS file system, and addi-
tional entries were specified in the ACL.
EOPNOTSUPP
cmd is ACL_SET, the file specified by pathp resides on a non-local file system, and addi-
tional entries were specified in the ACL.
EROFS cmd is ACL_SET and the file specified by pathp resides on a file system that is mounted
read-only.
EFAULT aclbufp points to an illegal address.
SEE ALSO
aclsort(3), getacl(1), setacl(1).
HP-UX 11i Version 2: September 2004 2 Hewlett-Packard Company Section 211