diff options
author | Matthias Dieter Wallnöfer <mwallnoefer@yahoo.de> | 2009-09-13 11:01:44 +0200 |
---|---|---|
committer | Matthias Dieter Wallnöfer <mwallnoefer@yahoo.de> | 2009-09-17 12:02:58 +0200 |
commit | 7c71370a0f3b23fe699f378f24282987681d7b01 (patch) | |
tree | a6fd1e9d4c69caeb8263da06ef5fd16bb45c02c7 | |
parent | f6a29f7dd368acf3f053fc4e1330c7314fc3e41f (diff) | |
download | samba-7c71370a0f3b23fe699f378f24282987681d7b01.tar.gz |
libds/common/flags: various
- Reorders the header file to have the order "userAccountFlags", "groupType",
"sAMAccountType" (matches the order in the flag_mapping.c and samldb module)
- Fixes the group account flags properly up
- Fixes the flags for "domain/forestFunctionality" and "domainControllerFunctionality"
up
-rw-r--r-- | libds/common/flag_mapping.c | 11 | ||||
-rw-r--r-- | libds/common/flags.h | 53 |
2 files changed, 36 insertions, 28 deletions
diff --git a/libds/common/flag_mapping.c b/libds/common/flag_mapping.c index dc7d80185a..429ccacb49 100644 --- a/libds/common/flag_mapping.c +++ b/libds/common/flag_mapping.c @@ -105,21 +105,24 @@ uint32_t ds_gtype2atype(uint32_t gtype) case GTYPE_SECURITY_BUILTIN_LOCAL_GROUP: atype = ATYPE_SECURITY_LOCAL_GROUP; break; + case GTYPE_SECURITY_GLOBAL_GROUP: + atype = ATYPE_SECURITY_GLOBAL_GROUP; + break; case GTYPE_SECURITY_DOMAIN_LOCAL_GROUP: atype = ATYPE_SECURITY_LOCAL_GROUP; break; - case GTYPE_SECURITY_GLOBAL_GROUP: - atype = ATYPE_SECURITY_GLOBAL_GROUP; + case GTYPE_SECURITY_UNIVERSAL_GROUP: + atype = ATYPE_SECURITY_UNIVERSAL_GROUP; break; case GTYPE_DISTRIBUTION_GLOBAL_GROUP: atype = ATYPE_DISTRIBUTION_GLOBAL_GROUP; break; case GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP: - atype = ATYPE_DISTRIBUTION_UNIVERSAL_GROUP; + atype = ATYPE_DISTRIBUTION_LOCAL_GROUP; break; case GTYPE_DISTRIBUTION_UNIVERSAL_GROUP: - atype = ATYPE_DISTRIBUTION_LOCAL_GROUP; + atype = ATYPE_DISTRIBUTION_UNIVERSAL_GROUP; break; } diff --git a/libds/common/flags.h b/libds/common/flags.h index 2b342af8d6..dfdd603a15 100644 --- a/libds/common/flags.h +++ b/libds/common/flags.h @@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -/* UserFlags for userAccountControl */ +/* User flags for "userAccountControl" */ #define UF_SCRIPT 0x00000001 /* NT or Lan Manager Login script must be executed */ #define UF_ACCOUNTDISABLE 0x00000002 #define UF_00000004 0x00000004 @@ -84,21 +84,7 @@ UF_DONT_REQUIRE_PREAUTH \ ) -/* sAMAccountType */ -#define ATYPE_NORMAL_ACCOUNT 0x30000000 /* 805306368 */ -#define ATYPE_WORKSTATION_TRUST 0x30000001 /* 805306369 */ -#define ATYPE_INTERDOMAIN_TRUST 0x30000002 /* 805306370 */ -#define ATYPE_SECURITY_GLOBAL_GROUP 0x10000000 /* 268435456 */ -#define ATYPE_DISTRIBUTION_GLOBAL_GROUP 0x10000001 /* 268435457 */ -#define ATYPE_DISTRIBUTION_UNIVERSAL_GROUP ATYPE_DISTRIBUTION_GLOBAL_GROUP -#define ATYPE_SECURITY_LOCAL_GROUP 0x20000000 /* 536870912 */ -#define ATYPE_DISTRIBUTION_LOCAL_GROUP 0x20000001 /* 536870913 */ - -#define ATYPE_ACCOUNT ATYPE_NORMAL_ACCOUNT /* 0x30000000 805306368 */ -#define ATYPE_GLOBAL_GROUP ATYPE_SECURITY_GLOBAL_GROUP /* 0x10000000 268435456 */ -#define ATYPE_LOCAL_GROUP ATYPE_SECURITY_LOCAL_GROUP /* 0x20000000 536870912 */ - -/* groupType */ +/* Group flags for "groupType" */ #define GROUP_TYPE_BUILTIN_LOCAL_GROUP 0x00000001 #define GROUP_TYPE_ACCOUNT_GROUP 0x00000002 #define GROUP_TYPE_RESOURCE_GROUP 0x00000004 @@ -132,6 +118,22 @@ #define GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP 0x00000004 /* 4 */ #define GTYPE_DISTRIBUTION_UNIVERSAL_GROUP 0x00000008 /* 8 */ +/* Account flags for "sAMAccountType" */ +#define ATYPE_NORMAL_ACCOUNT 0x30000000 /* 805306368 */ +#define ATYPE_WORKSTATION_TRUST 0x30000001 /* 805306369 */ +#define ATYPE_INTERDOMAIN_TRUST 0x30000002 /* 805306370 */ +#define ATYPE_SECURITY_GLOBAL_GROUP 0x10000000 /* 268435456 */ +#define ATYPE_SECURITY_LOCAL_GROUP 0x20000000 /* 536870912 */ +#define ATYPE_SECURITY_UNIVERSAL_GROUP ATYPE_SECURITY_GLOBAL_GROUP +#define ATYPE_DISTRIBUTION_GLOBAL_GROUP 0x10000001 /* 268435457 */ +#define ATYPE_DISTRIBUTION_LOCAL_GROUP 0x20000001 /* 536870913 */ +#define ATYPE_DISTRIBUTION_UNIVERSAL_GROUP ATYPE_DISTRIBUTION_GLOBAL_GROUP + +#define ATYPE_ACCOUNT ATYPE_NORMAL_ACCOUNT /* 0x30000000 805306368 */ +#define ATYPE_GLOBAL_GROUP ATYPE_SECURITY_GLOBAL_GROUP /* 0x10000000 268435456 */ +#define ATYPE_LOCAL_GROUP ATYPE_SECURITY_LOCAL_GROUP /* 0x20000000 536870912 */ + +/* "instanceType" */ #define INSTANCE_TYPE_IS_NC_HEAD 0x00000001 #define INSTANCE_TYPE_UNINSTANT 0x00000002 #define INSTANCE_TYPE_WRITE 0x00000004 @@ -139,6 +141,7 @@ #define INSTANCE_TYPE_NC_COMING 0x00000010 #define INSTANCE_TYPE_NC_GOING 0x00000020 +/* "systemFlags" */ #define SYSTEM_FLAG_CR_NTDS_NC 0x00000001 #define SYSTEM_FLAG_CR_NTDS_DOMAIN 0x00000002 #define SYSTEM_FLAG_CR_NTDS_NOT_GC_REPLICATED 0x00000004 @@ -152,6 +155,7 @@ #define SYSTEM_FLAG_CONFIG_ALLOW_RENAME 0x40000000 #define SYSTEM_FLAG_DISALLOW_DELTE 0x80000000 +/* "searchFlags" */ #define SEARCH_FLAG_ATTINDEX 0x0000001 #define SEARCH_FLAG_PDNTATTINDEX 0x0000002 #define SEARCH_FLAG_ANR 0x0000004 @@ -163,15 +167,16 @@ #define SEARCH_FLAG_NEVERVALUEAUDIT 0x0000100 #define SEARCH_FLAG_RODC_ATTRIBUTE 0x0000200 -#define DS_BEHAVIOR_WIN2000 0 -#define DS_BEHAVIOR_WIN2003_INTERIM 1 -#define DS_BEHAVIOR_WIN2003 2 -#define DS_BEHAVIOR_WIN2008 3 - -/* Settings for the domainFunctionality attribute in the rootDSE */ - +/* "domainFunctionality", "forestFunctionality" in the rootDSE */ #define DS_DOMAIN_FUNCTION_2000 0 -#define DS_DOMAIN_FUCNTION_2003_MIXED 1 +#define DS_DOMAIN_FUNCTION_2003_MIXED 1 #define DS_DOMAIN_FUNCTION_2003 2 #define DS_DOMAIN_FUNCTION_2008 3 +#define DS_DOMAIN_FUNCTION_2008_R2 4 + +/* "domainControllerFunctionality" in the rootDSE */ +#define DS_DC_FUNCTION_2000 0 +#define DS_DC_FUNCTION_2003 2 +#define DS_DC_FUNCTION_2008 3 +#define DS_DC_FUNCTION_2008_R2 4 |