ACL_GET_PERM(3)         BSD Library Functions Manual         ACL_GET_PERM(3)

NAME         top

     acl_get_perm — test for a permission in an ACL permission set

LIBRARY         top

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

SYNOPSIS         top

     #include <sys/types.h>
     #include <acl/libacl.h>

     acl_get_perm(acl_permset_t permset_d, acl_perm_t perm);

DESCRIPTION         top

     The acl_get_perm() function tests if the permission specified by the
     argument perm (one of ACL_READ, ACL_WRITE, ACL_EXECUTE) is contained in
     the ACL permission set pointed to by the argument permset_d.

     Any existing descriptors that refer to permset_d continue to refer to
     that permission set.

RETURN VALUE         top

     If successful, the acl_get_perm() function returns 1 if the permission
     specified by perm is contained in the ACL permission set permset_d, and
     0 if the permission is not contained in the permission set. Otherwise,
     the value -1 is returned and the global variable errno is set to indi‐
     cate the error.

ERRORS         top

     If any of the following conditions occur, the acl_get_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 is not a valid acl_perm_t value.

STANDARDS         top

     This is a non-portable, Linux specific extension to the ACL
     manipulation functions defined in IEEE Std 1003.1e draft 17
     (“POSIX.1e”, abandoned).

SEE ALSO         top

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

AUTHOR         top

     Written by Andreas Gruenbacher <>.

COLOPHON         top

     This page is part of the acl (manipulating access control lists)
     project.  Information about the project can be found at  If you have a bug report for
     this manual page, see ⟨⟩.
     This page was obtained from the project's upstream Git repository
     ⟨git://⟩ on 2018-10-29.  (At that time,
     the date of the most recent commit that was found in the repository was
     2018-06-18.)  If you discover any rendering problems in this HTML ver‐
     sion 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

Linux ACL                      March 23, 2002                      Linux ACL