ACE_HEADER

typedef struct _ACE_HEADER { /* acehdr */

BYTE AceType;

BYTE AceSize;

BYTE InheritFlags;

BYTE AceFlags;

} ACE_HEADER;

typedef ACE_HEADER *PACE_HEADER;

Members

AceType

Specifies the ACE type. Currently, this parameter may be one of the following values:

Value Meaning

ACCESS_ALLOWED_ACE_TYPE AccessAllowed ACE
ACCESS_DENIED_ACE_TYPE AccessDenied ACE
SYSTEM_AUDIT_ACE_TYPE SystemAudit ACE
SYSTEM_ALARM_ACE_TYPE SystemAlarm ACE

Additionally, values in the ranges 0x30 through 0x3F and 0xF0 through 0xFF are defined to be “unknown”. These unknown values are not supported by the architecture, and must not be passed across interfaces specified to include ACLs. The purpose of the unknown ACE types is to reserve a set of types that can be used by object-specific code to store object-specific information within an ACL.

AceSize

Specifies the size in bytes of the ACE.

InheritFlags

A set of bit flags that specify inheritance properties of the ACE. This parameter may be some combination of the following values:

Value Meaning

OBJECT_INHERIT_ACE The ACE is to be inherited by non-container objects created within the container object to which the ACE is assigned.
CONTAINER_INHERIT_ACE The ACE is to be inherited by sub-directories.
NO_PROPAGATE_INHERIT_ACE The OBJECT_INHERIT_ACE and CONTAINER_INHERIT_ACE bits are not to be propagated to an inherited ACE.
INHERIT_ONLY_ACE The ACE does not apply to the containing object, but is only to be applied to subobjects.

AceFlags

A set of ACE type-specific control flags. This parameter may be some combination of the following values:

Value Meaning

SUCCESSFUL_ACCESS_ACE_FLAG Used with system audit and system alarm ACEs to indicate that a message is generated for successful accesses.
FAILED_ACCESS_ACE_FLAG Used with system audit and system alarm ACEs to indicate that a message is generated for failed accesses.

See Also

ACE, ACL ACCESS_ALLOWED_ACE, ACCESS_DENIED_ACE, SYSTEM_ALARM_ACE, SYSTEM_AUDIT_ACE