diff options
-rw-r--r-- | source4/include/nterr.h | 3 | ||||
-rw-r--r-- | source4/include/rpc_secdes.h | 39 | ||||
-rw-r--r-- | source4/include/smb_acls.h | 2 | ||||
-rw-r--r-- | source4/include/smb_macros.h | 5 |
4 files changed, 33 insertions, 16 deletions
diff --git a/source4/include/nterr.h b/source4/include/nterr.h index 1c052eb286..1b78ad189c 100644 --- a/source4/include/nterr.h +++ b/source4/include/nterr.h @@ -558,6 +558,7 @@ #define NT_STATUS_TOO_MANY_LINKS NT_STATUS(0xC0000000 | 0x0265) #define NT_STATUS_QUOTA_LIST_INCONSISTENT NT_STATUS(0xC0000000 | 0x0266) #define NT_STATUS_FILE_IS_OFFLINE NT_STATUS(0xC0000000 | 0x0267) +#define NT_STATUS_NOT_A_REPARSE_POINT NT_STATUS(0xC0000000 | 0x0275) #define NT_STATUS_NO_SUCH_JOB NT_STATUS(0xC0000000 | 0xEDE) /* scheduler */ @@ -566,5 +567,3 @@ #define NT_STATUS_FOOBAR NT_STATUS_UNSUCCESSFUL #endif /* _NTERR_H */ - - diff --git a/source4/include/rpc_secdes.h b/source4/include/rpc_secdes.h index 80cc71fccf..dfcd906b7f 100644 --- a/source4/include/rpc_secdes.h +++ b/source4/include/rpc_secdes.h @@ -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. */ @@ -89,14 +90,28 @@ #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) /* SEC_ACCESS */ typedef struct security_info_info @@ -291,12 +306,12 @@ typedef struct standard_mapping { #define SA_RIGHT_DIR_DELETE_CHILD 0x0040 -/* 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 @@ -312,14 +327,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 */ @@ -374,8 +389,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 @@ -385,7 +400,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 | \ diff --git a/source4/include/smb_acls.h b/source4/include/smb_acls.h index dc6ca30f9c..49c4406ab8 100644 --- a/source4/include/smb_acls.h +++ b/source4/include/smb_acls.h @@ -199,7 +199,7 @@ typedef struct SMB_ACL_T { /* Donated by Medha Date, mdate@austin.ibm.com, for IBM */ -#include "/usr/include/acl.h" +#include <acl.h> typedef uint *SMB_ACL_PERMSET_T; diff --git a/source4/include/smb_macros.h b/source4/include/smb_macros.h index 602df80671..6f8ecd6c21 100644 --- a/source4/include/smb_macros.h +++ b/source4/include/smb_macros.h @@ -73,8 +73,11 @@ #define SMB_ASSERT_ARRAY(a,n) SMB_ASSERT((sizeof(a)/sizeof((a)[0])) >= (n)) +/* the service number for the [globals] defaults */ +#define GLOBAL_SECTION_SNUM (-1) /* translates a connection number into a service number */ -#define SNUM(conn) ((conn)?(conn)->service:-1) +#define SNUM(conn) ((conn)?(conn)->service:GLOBAL_SECTION_SNUM) + /* access various service details */ #define SERVICE(snum) (lp_servicename(snum)) |