44 #include <sys/types.h>
55 #define WINSEC_MAX_SUBAUTHS 15
57 #define WINSEC_DESC_HEADER_SIZE (5 * sizeof(uint32_t))
58 #define WINSEC_ACL_HEADER_SIZE (2 * sizeof(uint32_t))
59 #define WINSEC_ACE_MIN_SIZE 16
65 #define WINSEC_DESC_SELF_RELATIVE 0x8000
66 #define WINSEC_DESC_SACL_PRESENT 0x0010
67 #define WINSEC_DESC_DACL_PRESENT 0x0004
69 #define WINSEC_ACE_OBJECT_PRESENT 0x00000001
70 #define WINSEC_ACE_OBJECT_INHERITED_PRESENT 0x00000002
71 #define WINSEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT 0x5
72 #define WINSEC_ACE_TYPE_ACCESS_DENIED_OBJECT 0x6
73 #define WINSEC_ACE_TYPE_SYSTEM_AUDIT_OBJECT 0x7
74 #define WINSEC_ACE_TYPE_SYSTEM_ALARM_OBJECT 0x8
78 typedef struct _winsec_uuid
98 typedef struct _winsec_sid
114 uint32_t sub_auths[WINSEC_MAX_SUBAUTHS];
119 typedef struct _winsec_ace
153 typedef struct _winsec_acl
171 typedef struct _winsec_desc
237 const uint8_t* buf, uint32_t buf_len);
245 const uint8_t* buf, uint32_t buf_len);
253 const uint8_t* buf, uint32_t buf_len);
261 const uint8_t* buf, uint32_t buf_len);
269 const uint8_t* buf, uint32_t buf_len);