Provided by: libdpm-dev_1.10.0-2_amd64 bug

NAME

       dpns_getacl - get DPNS directory/file access control lists

SYNOPSIS

       #include <sys/types.h>
       #include "dpns_api.h"

       int dpns_getacl (const char *path, int nentries, struct dpns_acl *acl)

DESCRIPTION

       dpns_getacl gets the Access Control List associated with a DPNS directory/file.

       path   specifies the logical pathname relative to the current DPNS directory or the full DPNS pathname.

       nentries
              specifies  the  number of entries that can fit in the buffer. If nentries is zero, the acl pointer
              can be NULL and the routine just returns the actual number of entries.

       acl    is a pointer to an array of dpns_acl structures allocated by the application to receive the reply.

       struct dpns_acl {
               unsigned char   a_type;
               int             a_id;
               unsigned char   a_perm;
       };

       a_type is the ACL type: CNS_ACL_USER_OBJ, CNS_ACL_USER, CNS_ACL_GROUP_OBJ, CNS_ACL_GROUP, CNS_ACL_MASK or
              CNS_ACL_OTHER.  Types for default entries are obtained by OR'ing the flag CNS_ACL_DEFAULT with one
              of the above types.

       a_id   is the user or group numeric id.

       a_perm is the access permission in numeric form obtained by OR'ing some of  the  bits  S_IROTH,  S_IWOTH,
              S_IXOTH.

RETURN VALUE

       This  routine returns the actual number of entries if the operation was successful or -1 if the operation
       failed. In the latter case, serrno is set appropriately.

ERRORS

       ENOENT       The named file/directory does not exist or is a null pathname.

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

       EFAULT       path is a NULL pointer or acl is a NULL pointer and nentries is greater than zero.

       ENOTDIR      A component of path prefix is not a directory.

       EINVAL       nentries is negative.

       ENOSPC       nentries is less than the number of entries returned by the server.

       ENAMETOOLONG The length of path  exceeds  CA_MAXPATHLEN  or  the  length  of  a  path  component  exceeds
                    CA_MAXNAMELEN.

       SENOSHOST    Host unknown.

       SENOSSERV    Service unknown.

       SECOMERR     Communication error.

       ENSNACT      Name server is not running or is being shutdown.

SEE ALSO

       Castor_limits(4), dpns_chdir(3), dpns_chmod(3), dpns-getacl(1)

AUTHOR

       LCG Grid Deployment Team