dpns_getacl man page

DPNS_GETACL(3)              DPNS Library Functions              DPNS_GETACL(3)

[1mNAME[0m
      dpns_getacl - get DPNS directory/file access control lists

[1mSYNOPSIS[0m
      [1m#include <sys/types.h>[0m
      [1m#include "dpns_api.h"[0m

      [1mint dpns_getacl (const char *[4m[22mpath[24m[1m, int [4m[22mnentries[24m[1m, struct dpns_acl *[4m[22macl[24m[1m)[0m

[1mDESCRIPTION[0m
      [1mdpns_getacl  [22mgets the Access Control List associated with a DPNS direc-
      tory/file.

      [4mpath[24m   specifies the logical pathname  relative  to  the  current  DPNS
             directory or the full DPNS pathname.

      [4mnentries[0m
             specifies  the  number of entries that can fit in the buffer. If
             [4mnentries[24m is zero, the [4macl[24m pointer can be NULL  and  the  routine
             just returns the actual number of entries.

      [4macl[24m    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;
      };

      [4ma_type[24m 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.

      [4ma_id[24m   is the user or group numeric id.

      [4ma_perm[24m is the access permission in numeric form obtained by OR'ing some
             of the bits S_IROTH, S_IWOTH, S_IXOTH.

[1mRETURN VALUE[0m
      This routine returns the actual number of entries if the operation  was
      successful or -1 if the operation failed. In the latter case, [1mserrno [22mis
      set appropriately.

[1mERRORS[0m
      [1mENOENT       [22mThe named file/directory does not exist or is a null path-
                   name.

      [1mEACCES       [22mSearch  permission  is  denied  on a component of the [4mpath[0m
                   prefix.

      [1mEFAULT       [4m[22mpath[24m is a NULL pointer or [4macl[24m is a NULL pointer  and  [4mnen-[0m
                   [4mtries[24m is greater than zero.

      [1mENOTDIR      [22mA component of [4mpath[24m prefix is not a directory.

      [1mEINVAL       [4m[22mnentries[24m is negative.

      [1mENOSPC       [4m[22mnentries[24m  is  less  than the number of entries returned by
                   the server.

      [1mENAMETOOLONG [22mThe length of [4mpath[24m exceeds [1mCA_MAXPATHLEN [22mor the length  of
                   a [4mpath[24m component exceeds [1mCA_MAXNAMELEN[22m.

      [1mSENOSHOST    [22mHost unknown.

      [1mSENOSSERV    [22mService unknown.

      [1mSECOMERR     [22mCommunication error.

      [1mENSNACT      [22mName server is not running or is being shutdown.

[1mSEE ALSO[0m
      [1mCastor_limits(4)[22m, [1mdpns_chdir(3)[22m, [1mdpns_chmod(3)[22m, [1mdpns-getacl(1)[0m

[1mAUTHOR[0m
      [1mLCG Grid Deployment [22mTeam

DPNS                     $Date: 2003/04/08 05:37:53 $           DPNS_GETACL(3)