NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | STANDARDS | SEE ALSO | AUTHOR | COLOPHON

ACL_ADD_PERM(3)         BSD Library Functions Manual         ACL_ADD_PERM(3)

NAME         top

     acl_add_perm — add a permission to an ACL permission set

LIBRARY         top

     Linux Access Control Lists library (libacl, -lacl).

SYNOPSIS         top

     #include <sys/types.h>
     #include <sys/acl.h>
     int
     acl_add_perm(acl_permset_t permset_d, acl_perm_t perm);

DESCRIPTION         top

     The acl_add_perm() function adds the permission contained in the argu‐
     ment perm (one of ACL_READ, ACL_WRITE, ACL_EXECUTE) to the permission
     set referred to by the argument permset_d.  An attempt to add a permis‐
     sion that is already contained in the permission set is not considered
     an error.
     Any existing descriptors that refer to permset_d continue to refer to
     that permission set.

RETURN VALUE         top

     The acl_add_perm() function returns the value 0 if successful; other‐
     wise the value -1 is returned and the global variable errno is set to
     indicate the error.

ERRORS         top

     If any of the following conditions occur, the acl_add_perm() function
     returns -1 and sets errno to the corresponding value:
     [EINVAL]           The argument permset_d is not a valid descriptor for
                        a permission set within an ACL entry.
                        The argument perm does not contain a valid
                        acl_perm_t value.

STANDARDS         top

     IEEE Std 1003.1e draft 17 (“POSIX.1e”, abandoned)

SEE ALSO         top

     acl_clear_perms(3), acl_delete_perm(3), acl_get_perm(3),
     acl_get_permset(3), acl_set_permset(3), acl(5)

AUTHOR         top

     Derived from the FreeBSD manual pages written by Robert N M Watson
     <rwatson@FreeBSD.org>, and adapted for Linux by Andreas Gruenbacher
     <a.gruenbacher@bestbits.at>.

COLOPHON         top

     This page is part of the acl (manipulating access control lists)
     project.  Information about the project can be found at
     http://savannah.nongnu.org/projects/acl.  If you have a bug report for
     this manual page, see http://savannah.nongnu.org/bugs/?group=acl.  This
     page was obtained from the project's upstream Git repository
     git://git.savannah.nongnu.org/acl.git on 2017-07-05.  If you discover
     any rendering problems in this HTML version of the page, or you believe
     there is a better or more up-to-date source for the page, or you have
     corrections or improvements to the information in this COLOPHON (which
     is not part of the original manual page), send a mail to
     man-pages@man7.org
Linux ACL                      March 23, 2002                      Linux ACL