r4324: add some more ads constants before I forget them
[samba.git] / source4 / include / ads.h
index 8db0209573bb82cc253d125cbcdfb31e1d1a84bf..cdaccbab14adb3052e71b2e24207b2488c5be78f 100644 (file)
@@ -96,11 +96,33 @@ typedef void **ADS_MODLIST;
 #define ADS_NO_REFERRALS_OID "1.2.840.113556.1.4.1339"
 #define ADS_SERVER_SORT_OID "1.2.840.113556.1.4.473"
 #define ADS_PERMIT_MODIFY_OID "1.2.840.113556.1.4.1413"
 #define ADS_NO_REFERRALS_OID "1.2.840.113556.1.4.1339"
 #define ADS_SERVER_SORT_OID "1.2.840.113556.1.4.473"
 #define ADS_PERMIT_MODIFY_OID "1.2.840.113556.1.4.1413"
-
+/*
+1.2.840.113556.1.4.319;
+1.2.840.113556.1.4.801;
+1.2.840.113556.1.4.473;
+1.2.840.113556.1.4.528;
+1.2.840.113556.1.4.417;
+1.2.840.113556.1.4.619;
+1.2.840.113556.1.4.841;
+1.2.840.113556.1.4.529;
+1.2.840.113556.1.4.805;
+1.2.840.113556.1.4.521;
+1.2.840.113556.1.4.970;
+1.2.840.113556.1.4.1338;
+1.2.840.113556.1.4.474;
+1.2.840.113556.1.4.1339;
+1.2.840.113556.1.4.1340;
+1.2.840.113556.1.4.1413;
+2.16.840.1.113730.3.4.9;
+2.16.840.1.113730.3.4.10;
+1.2.840.113556.1.4.1504;
+1.2.840.113556.1.4.1852;
+1.2.840.113556.1.4.802; 
+*/
 /* UserFlags for userAccountControl */
 #define UF_SCRIPT                              0x00000001
 #define UF_ACCOUNTDISABLE                      0x00000002
 /* UserFlags for userAccountControl */
 #define UF_SCRIPT                              0x00000001
 #define UF_ACCOUNTDISABLE                      0x00000002
-#define UF_UNUSED_1                            0x00000004
+#define UF_00000004                            0x00000004
 #define UF_HOMEDIR_REQUIRED                    0x00000008
 
 #define UF_LOCKOUT                             0x00000010
 #define UF_HOMEDIR_REQUIRED                    0x00000008
 
 #define UF_LOCKOUT                             0x00000010
@@ -110,13 +132,13 @@ typedef void **ADS_MODLIST;
 
 #define UF_TEMP_DUPLICATE_ACCOUNT              0x00000100
 #define UF_NORMAL_ACCOUNT                      0x00000200
 
 #define UF_TEMP_DUPLICATE_ACCOUNT              0x00000100
 #define UF_NORMAL_ACCOUNT                      0x00000200
-#define UF_UNUSED_2                            0x00000400
+#define UF_00000400                            0x00000400
 #define UF_INTERDOMAIN_TRUST_ACCOUNT           0x00000800
 
 #define UF_WORKSTATION_TRUST_ACCOUNT           0x00001000
 #define UF_SERVER_TRUST_ACCOUNT                0x00002000
 #define UF_INTERDOMAIN_TRUST_ACCOUNT           0x00000800
 
 #define UF_WORKSTATION_TRUST_ACCOUNT           0x00001000
 #define UF_SERVER_TRUST_ACCOUNT                0x00002000
-#define UF_UNUSED_3                            0x00004000
-#define UF_UNUSED_4                            0x00008000
+#define UF_00004000                            0x00004000
+#define UF_00008000                            0x00008000
 
 #define UF_DONT_EXPIRE_PASSWD                  0x00010000
 #define UF_MNS_LOGON_ACCOUNT                   0x00020000
 
 #define UF_DONT_EXPIRE_PASSWD                  0x00010000
 #define UF_MNS_LOGON_ACCOUNT                   0x00020000
@@ -185,9 +207,30 @@ typedef void **ADS_MODLIST;
 #define ATYPE_LOCAL_GROUP      ATYPE_SECURITY_LOCAL_GROUP      /* 0x20000000 536870912 */
 
 /* groupType */
 #define ATYPE_LOCAL_GROUP      ATYPE_SECURITY_LOCAL_GROUP      /* 0x20000000 536870912 */
 
 /* groupType */
-#define GTYPE_SECURITY_BUILTIN_LOCAL_GROUP     0x80000005      /* -2147483643 */
-#define GTYPE_SECURITY_DOMAIN_LOCAL_GROUP      0x80000004      /* -2147483644 */
-#define GTYPE_SECURITY_GLOBAL_GROUP            0x80000002      /* -2147483646 */
+#define GROUP_TYPE_BUILTIN_LOCAL_GROUP         0x00000001
+#define GROUP_TYPE_ACCOUNT_GROUP               0x00000002
+#define GROUP_TYPE_RESOURCE_GROUP              0x00000004
+#define GROUP_TYPE_UNIVERSAL_GROUP             0x00000008
+#define GROUP_TYPE_APP_BASIC_GROUP             0x00000010
+#define GROUP_TYPE_APP_QUERY_GROUP             0x00000020
+#define GROUP_TYPE_SECURITY_ENABLED            0x80000000
+
+#define GTYPE_SECURITY_BUILTIN_LOCAL_GROUP ( \
+               /* 0x80000005 -2147483643 */ \
+               GROUP_TYPE_BUILTIN_LOCAL_GROUP| \
+               GROUP_TYPE_RESOURCE_GROUP| \
+               GROUP_TYPE_SECURITY_ENABLED \
+               )
+#define GTYPE_SECURITY_DOMAIN_LOCAL_GROUP ( \
+               /* 0x80000004 -2147483644 */ \
+               GROUP_TYPE_RESOURCE_GROUP| \
+               GROUP_TYPE_SECURITY_ENABLED \
+               )
+#define GTYPE_SECURITY_GLOBAL_GROUP ( \
+               /* 0x80000002 -2147483646 */ \
+               GROUP_TYPE_ACCOUNT_GROUP| \
+               GROUP_TYPE_SECURITY_ENABLED \
+               )
 #define GTYPE_DISTRIBUTION_GLOBAL_GROUP                0x00000002      /* 2 */
 #define GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP  0x00000004      /* 4 */
 #define GTYPE_DISTRIBUTION_UNIVERSAL_GROUP     0x00000008      /* 8 */
 #define GTYPE_DISTRIBUTION_GLOBAL_GROUP                0x00000002      /* 2 */
 #define GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP  0x00000004      /* 4 */
 #define GTYPE_DISTRIBUTION_UNIVERSAL_GROUP     0x00000008      /* 8 */
@@ -236,3 +279,26 @@ typedef void **ADS_MODLIST;
 #ifndef HAVE_AP_OPTS_USE_SUBKEY
 #define AP_OPTS_USE_SUBKEY 0
 #endif
 #ifndef HAVE_AP_OPTS_USE_SUBKEY
 #define AP_OPTS_USE_SUBKEY 0
 #endif
+
+
+#define INSTANCE_TYPE_IS_NC_HEAD       0x00000001
+#define INSTANCE_TYPE_UNINSTANT                0x00000002
+#define INSTANCE_TYPE_WRITE            0x00000004
+#define INSTANCE_TYPE_NC_ABOVE         0x00000008
+#define INSTANCE_TYPE_NC_COMING                0x00000010
+#define INSTANCE_TYPE_NC_GOING         0x00000020
+
+#define SYSTEM_FLAG_CR_NTDS_NC                 0x00000001
+#define SYSTEM_FLAG_CR_NTDS_DOMAIN             0x00000002
+#define SYSTEM_FLAG_CR_NTDS_NOT_GC_REPLICATED  0x00000004
+#define SYSTEM_FLAG_SCHEMA_BASE_OBJECT         0x00000010
+#define SYSTEM_FLAG_DISALLOW_MOVE_ON_DELETE    0x02000000
+#define SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE       0x04000000
+#define SYSTEM_FLAG_DOMAIN_DISALLOW_RENAME     0x08000000
+#define SYSTEM_FLAG_CONFIG_ALLOW_LIMITED_MOVE  0x10000000
+#define SYSTEM_FLAG_CONFIG_ALLOW_MOVE          0x20000000
+#define SYSTEM_FLAG_CONFIG_ALLOW_ERNAME                0x20000000
+#define SYSTEM_FLAG_DISALLOW_DELTE             0x80000000
+
+#define DS_BEHAVIOR_WIN2000    0
+#define DS_BEHAVIOR_WIN2003    2