port latest changes from SAMBA_3_0 tree
[samba.git] / source3 / include / rpc_secdes.h
index 1bb25e8651151bef83366417c2d59c17eae2af4c..5e718f8167d6094cad8cbb8fa2122a98109f62b5 100644 (file)
@@ -78,7 +78,8 @@
 #define SEC_DESC_DACL_DEFAULTED                0x0008
 #define SEC_DESC_SACL_PRESENT          0x0010
 #define SEC_DESC_SACL_DEFAULTED                0x0020
-#define SEC_DESC_SELF_RELATIVE         0x8000
+#define SEC_DESC_DACL_TRUSTED          0x0040
+#define SEC_DESC_SERVER_SECURITY       0x0080
 /*
  * New Windows 2000 bits.
  */
 #define SE_DESC_DACL_PROTECTED         0x1000
 #define SE_DESC_SACL_PROTECTED         0x2000
 
+/* Don't know what this means. */
+#define SEC_DESC_RM_CONTROL_VALID      0x4000
+
+#define SEC_DESC_SELF_RELATIVE         0x8000
+
 /* security information */
 #define OWNER_SECURITY_INFORMATION     0x00000001
 #define GROUP_SECURITY_INFORMATION     0x00000002
 #define DACL_SECURITY_INFORMATION      0x00000004
 #define SACL_SECURITY_INFORMATION      0x00000008
+/* Extra W2K flags. */
+#define UNPROTECTED_SACL_SECURITY_INFORMATION  0x10000000
+#define UNPROTECTED_DACL_SECURITY_INFORMATION  0x20000000
+#define PROTECTED_SACL_SECURITY_INFORMATION    0x40000000
+#define PROTECTED_DACL_SECURITY_INFORMATION    0x80000000
 
 #define ALL_SECURITY_INFORMATION (OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION|\
-                                                                       DACL_SECURITY_INFORMATION|SACL_SECURITY_INFORMATION)
+                                       DACL_SECURITY_INFORMATION|SACL_SECURITY_INFORMATION|\
+                                       UNPROTECTED_SACL_SECURITY_INFORMATION|\
+                                       UNPROTECTED_DACL_SECURITY_INFORMATION|\
+                                       PROTECTED_SACL_SECURITY_INFORMATION|\
+                                       PROTECTED_DACL_SECURITY_INFORMATION)
 
 /* Globally Unique ID */
 #define  GUID_SIZE 16
@@ -290,12 +305,12 @@ typedef struct standard_mapping {
                SA_RIGHT_FILE_EXECUTE)            
 
                
-/* SAM Object specific access rights */
+/* SAM server specific access rights */
 
-#define SA_RIGHT_SAM_UNKNOWN_1         0x00000001
+#define SA_RIGHT_SAM_CONNECT_SERVER    0x00000001
 #define SA_RIGHT_SAM_SHUTDOWN_SERVER   0x00000002
-#define SA_RIGHT_SAM_UNKNOWN_4         0x00000004
-#define SA_RIGHT_SAM_UNKNOWN_8         0x00000008
+#define SA_RIGHT_SAM_INITIALISE_SERVER 0x00000004
+#define SA_RIGHT_SAM_CREATE_DOMAIN     0x00000008
 #define SA_RIGHT_SAM_ENUM_DOMAINS      0x00000010
 #define SA_RIGHT_SAM_OPEN_DOMAIN       0x00000020
 
@@ -311,14 +326,14 @@ typedef struct standard_mapping {
 
 #define GENERIC_RIGHTS_SAM_WRITE \
                (STANDARD_RIGHTS_WRITE_ACCESS   | \
-               SA_RIGHT_SAM_UNKNOWN_8          | \
-               SA_RIGHT_SAM_UNKNOWN_4          | \
+               SA_RIGHT_SAM_CREATE_DOMAIN      | \
+               SA_RIGHT_SAM_INITIALISE_SERVER  | \
                SA_RIGHT_SAM_SHUTDOWN_SERVER)
 
 #define GENERIC_RIGHTS_SAM_EXECUTE \
                (STANDARD_RIGHTS_EXECUTE_ACCESS | \
                SA_RIGHT_SAM_OPEN_DOMAIN        | \
-               SA_RIGHT_SAM_UNKNOWN_1)            
+               SA_RIGHT_SAM_CONNECT_SERVER)            
 
 
 /* Domain Object specific access rights */
@@ -373,8 +388,8 @@ typedef struct standard_mapping {
 #define SA_RIGHT_USER_CHANGE_PASSWORD  0x00000040
 #define SA_RIGHT_USER_SET_PASSWORD     0x00000080
 #define SA_RIGHT_USER_GET_GROUPS       0x00000100
-#define SA_RIGHT_USER_UNKNOWN_200      0x00000200
-#define SA_RIGHT_USER_UNKNOWN_400      0x00000400
+#define SA_RIGHT_USER_READ_GROUP_MEM   0x00000200
+#define SA_RIGHT_USER_CHANGE_GROUP_MEM 0x00000400
 
 #define SA_RIGHT_USER_ALL_ACCESS       0x000007FF
 
@@ -384,7 +399,7 @@ typedef struct standard_mapping {
 
 #define GENERIC_RIGHTS_USER_READ \
                (STANDARD_RIGHTS_READ_ACCESS    | \
-               SA_RIGHT_USER_UNKNOWN_200       | \
+               SA_RIGHT_USER_READ_GROUP_MEM    | \
                SA_RIGHT_USER_GET_GROUPS        | \
                SA_RIGHT_USER_ACCT_FLAGS_EXPIRY | \
                SA_RIGHT_USER_GET_LOGONINFO     | \