2.4.5.1 ACL--RPC Representation

msdn link

The RPC representation of the ACL data type specifies the elements needed to access a complete access control list, including both the ACL header structure and the array of ACEs. The individual members are as specified in section 2.4.5.

The ACL structure MUST be aligned on a 32-bit boundary.

In the absence of implementation-specific functions to access the individual ACEs, access to each ACE MUST be computed by using the AclSize and AceCount members to parse the memory following the ACL to identify each ACE_HEADER, which in turn contains the information needed to obtain the specific ACEs.

 typedef struct _ACL {
   unsigned char AclRevision;
   unsigned char Sbz1;
   unsigned short AclSize;
   unsigned short AceCount;
   unsigned short Sbz2;
 } ACL,
  *PACL;