Add missing security constants.
[reactos.git] / reactos / include / ddk / setypes.h
index 78baff6..b6a5e0e 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: setypes.h,v 1.13 2004/02/02 12:03:43 ekohl Exp $
+/* $Id: setypes.h,v 1.15 2004/07/11 16:09:37 ekohl Exp $
  *
  * COPYRIGHT:         See COPYING in the top level directory for details
  * PROJECT:           ReactOS kernel
@@ -51,6 +51,7 @@
 
 /* SECURITY_DESCRIPTOR_CONTROL */
 #define SECURITY_DESCRIPTOR_REVISION   (1)
+#define SECURITY_DESCRIPTOR_REVISION1  (1)
 #define SECURITY_DESCRIPTOR_MIN_LENGTH (20)
 #define SE_OWNER_DEFAULTED     (1)
 #define SE_GROUP_DEFAULTED     (2)
 #define SE_PRIVILEGE_USED_FOR_ACCESS   (0x80000000L)
 #define PRIVILEGE_SET_ALL_NECESSARY    (0x1)
 
+/* SID */
+#define SID_REVISION           (1)
+#define SID_MAX_SUB_AUTHORITIES        (15)
+
 typedef struct _ACCESS_TOKEN
 {
   TOKEN_SOURCE                 TokenSource;               /* 0x00 */
@@ -179,6 +184,30 @@ typedef enum _SECURITY_OPERATION_CODE
   AssignSecurityDescriptor
 } SECURITY_OPERATION_CODE, *PSECURITY_OPERATION_CODE;
 
+typedef struct _ACCESS_STATE
+{
+  LUID OperationID;
+  BOOLEAN SecurityEvaluated;
+  BOOLEAN GenerateAudit;
+  BOOLEAN GenerateClose;
+  BOOLEAN PrivilegesAllocated;
+  ULONG Flags;
+  ACCESS_MASK RemainingDesiredAccess;
+  ACCESS_MASK PreviouslyGrantedAccess;
+  ACCESS_MASK OriginallyDesiredAccess;
+  SECURITY_SUBJECT_CONTEXT SubjectSecurityContext; /* 0x1C */
+  PSECURITY_DESCRIPTOR SecurityDescriptor; /* 0x2C */
+  PVOID AuxData; /* 0x30 */
+  union
+  {
+    INITIAL_PRIVILEGE_SET InitialPrivilegeSet;
+    PRIVILEGE_SET PrivilegeSet;
+  } Privileges;
+  BOOLEAN AuditPrivileges;
+  UNICODE_STRING ObjectName;
+  UNICODE_STRING ObjectTypeName;
+} ACCESS_STATE, *PACCESS_STATE;
+
 #endif
 
 /* EOF */