~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to source4/dsdb/common/flags.h

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
   Unix SMB/CIFS implementation.
 
3
   User/Group specific flags
 
4
 
 
5
   Copyright (C) Andrew Tridgell 2001-2003
 
6
 
 
7
   This program is free software; you can redistribute it and/or modify
 
8
   it under the terms of the GNU General Public License as published by
 
9
   the Free Software Foundation; either version 3 of the License, or
 
10
   (at your option) any later version.
 
11
 
 
12
   This program is distributed in the hope that it will be useful,
 
13
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
14
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
15
   GNU General Public License for more details.
 
16
 
 
17
   You should have received a copy of the GNU General Public License
 
18
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
19
*/
 
20
 
 
21
/* UserFlags for userAccountControl */
 
22
#define UF_SCRIPT                               0x00000001  /* NT or Lan Manager Login script must be executed */
 
23
#define UF_ACCOUNTDISABLE                       0x00000002
 
24
#define UF_00000004                             0x00000004
 
25
#define UF_HOMEDIR_REQUIRED                     0x00000008
 
26
 
 
27
#define UF_LOCKOUT                              0x00000010
 
28
#define UF_PASSWD_NOTREQD                       0x00000020
 
29
#define UF_PASSWD_CANT_CHANGE                   0x00000040
 
30
#define UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED      0x00000080
 
31
 
 
32
#define UF_TEMP_DUPLICATE_ACCOUNT               0x00000100 /* Local user account in usrmgr */
 
33
#define UF_NORMAL_ACCOUNT                       0x00000200
 
34
#define UF_00000400                             0x00000400
 
35
#define UF_INTERDOMAIN_TRUST_ACCOUNT            0x00000800
 
36
 
 
37
#define UF_WORKSTATION_TRUST_ACCOUNT            0x00001000
 
38
#define UF_SERVER_TRUST_ACCOUNT                 0x00002000
 
39
#define UF_00004000                             0x00004000
 
40
#define UF_00008000                             0x00008000
 
41
 
 
42
#define UF_DONT_EXPIRE_PASSWD                   0x00010000
 
43
#define UF_MNS_LOGON_ACCOUNT                    0x00020000
 
44
#define UF_SMARTCARD_REQUIRED                   0x00040000
 
45
#define UF_TRUSTED_FOR_DELEGATION               0x00080000
 
46
 
 
47
#define UF_NOT_DELEGATED                        0x00100000
 
48
#define UF_USE_DES_KEY_ONLY                     0x00200000
 
49
#define UF_DONT_REQUIRE_PREAUTH                 0x00400000
 
50
#define UF_PASSWORD_EXPIRED                     0x00800000
 
51
 
 
52
#define UF_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION 0x01000000
 
53
#define UF_NO_AUTH_DATA_REQUIRED                0x02000000
 
54
 
 
55
/* sAMAccountType */
 
56
#define ATYPE_NORMAL_ACCOUNT                    0x30000000 /* 805306368 */
 
57
#define ATYPE_WORKSTATION_TRUST                 0x30000001 /* 805306369 */
 
58
#define ATYPE_INTERDOMAIN_TRUST                 0x30000002 /* 805306370 */ 
 
59
#define ATYPE_SECURITY_GLOBAL_GROUP             0x10000000 /* 268435456 */
 
60
#define ATYPE_DISTRIBUTION_GLOBAL_GROUP         0x10000001 /* 268435457 */
 
61
#define ATYPE_DISTRIBUTION_UNIVERSAL_GROUP      ATYPE_DISTRIBUTION_GLOBAL_GROUP
 
62
#define ATYPE_SECURITY_LOCAL_GROUP              0x20000000 /* 536870912 */
 
63
#define ATYPE_DISTRIBUTION_LOCAL_GROUP          0x20000001 /* 536870913 */
 
64
 
 
65
#define ATYPE_ACCOUNT           ATYPE_NORMAL_ACCOUNT            /* 0x30000000 805306368 */
 
66
#define ATYPE_GLOBAL_GROUP      ATYPE_SECURITY_GLOBAL_GROUP     /* 0x10000000 268435456 */
 
67
#define ATYPE_LOCAL_GROUP       ATYPE_SECURITY_LOCAL_GROUP      /* 0x20000000 536870912 */
 
68
 
 
69
/* groupType */
 
70
#define GROUP_TYPE_BUILTIN_LOCAL_GROUP          0x00000001
 
71
#define GROUP_TYPE_ACCOUNT_GROUP                0x00000002
 
72
#define GROUP_TYPE_RESOURCE_GROUP               0x00000004
 
73
#define GROUP_TYPE_UNIVERSAL_GROUP              0x00000008
 
74
#define GROUP_TYPE_APP_BASIC_GROUP              0x00000010
 
75
#define GROUP_TYPE_APP_QUERY_GROUP              0x00000020
 
76
#define GROUP_TYPE_SECURITY_ENABLED             0x80000000
 
77
 
 
78
#define GTYPE_SECURITY_BUILTIN_LOCAL_GROUP ( \
 
79
                /* 0x80000005 -2147483643 */ \
 
80
                GROUP_TYPE_BUILTIN_LOCAL_GROUP| \
 
81
                GROUP_TYPE_RESOURCE_GROUP| \
 
82
                GROUP_TYPE_SECURITY_ENABLED \
 
83
                )
 
84
#define GTYPE_SECURITY_DOMAIN_LOCAL_GROUP ( \
 
85
                /* 0x80000004 -2147483644 */ \
 
86
                GROUP_TYPE_RESOURCE_GROUP| \
 
87
                GROUP_TYPE_SECURITY_ENABLED \
 
88
                )
 
89
#define GTYPE_SECURITY_GLOBAL_GROUP ( \
 
90
                /* 0x80000002 -2147483646 */ \
 
91
                GROUP_TYPE_ACCOUNT_GROUP| \
 
92
                GROUP_TYPE_SECURITY_ENABLED \
 
93
                )
 
94
#define GTYPE_SECURITY_UNIVERSAL_GROUP ( \
 
95
                /* 0x80000008 -2147483656 */ \
 
96
                GROUP_TYPE_UNIVERSAL_GROUP| \
 
97
                GROUP_TYPE_SECURITY_ENABLED \
 
98
                )
 
99
#define GTYPE_DISTRIBUTION_GLOBAL_GROUP         0x00000002      /* 2 */
 
100
#define GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP   0x00000004      /* 4 */
 
101
#define GTYPE_DISTRIBUTION_UNIVERSAL_GROUP      0x00000008      /* 8 */
 
102
 
 
103
#define INSTANCE_TYPE_IS_NC_HEAD        0x00000001
 
104
#define INSTANCE_TYPE_UNINSTANT         0x00000002
 
105
#define INSTANCE_TYPE_WRITE             0x00000004
 
106
#define INSTANCE_TYPE_NC_ABOVE          0x00000008
 
107
#define INSTANCE_TYPE_NC_COMING         0x00000010
 
108
#define INSTANCE_TYPE_NC_GOING          0x00000020
 
109
 
 
110
#define SYSTEM_FLAG_CR_NTDS_NC                  0x00000001
 
111
#define SYSTEM_FLAG_CR_NTDS_DOMAIN              0x00000002
 
112
#define SYSTEM_FLAG_CR_NTDS_NOT_GC_REPLICATED   0x00000004
 
113
#define SYSTEM_FLAG_SCHEMA_BASE_OBJECT          0x00000010
 
114
#define SYSTEM_FLAG_ATTR_IS_RDN                 0x00000020
 
115
#define SYSTEM_FLAG_DISALLOW_MOVE_ON_DELETE     0x02000000
 
116
#define SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE        0x04000000
 
117
#define SYSTEM_FLAG_DOMAIN_DISALLOW_RENAME      0x08000000
 
118
#define SYSTEM_FLAG_CONFIG_ALLOW_LIMITED_MOVE   0x10000000
 
119
#define SYSTEM_FLAG_CONFIG_ALLOW_MOVE           0x20000000
 
120
#define SYSTEM_FLAG_CONFIG_ALLOW_RENAME         0x40000000
 
121
#define SYSTEM_FLAG_DISALLOW_DELTE              0x80000000
 
122
 
 
123
#define SEARCH_FLAG_ATTINDEX            0x0000001
 
124
#define SEARCH_FLAG_PDNTATTINDEX        0x0000002
 
125
#define SEARCH_FLAG_ANR                 0x0000004
 
126
#define SEARCH_FLAG_PRESERVEONDELETE    0x0000008
 
127
#define SEARCH_FLAG_COPY                0x0000010
 
128
#define SEARCH_FLAG_TUPLEINDEX          0x0000020
 
129
#define SEARCH_FLAG_SUBTREEATTRINDEX    0x0000040
 
130
#define SEARCH_FLAG_CONFIDENTIAL        0x0000080
 
131
#define SEARCH_FLAG_NEVERVALUEAUDIT     0x0000100
 
132
#define SEARCH_FLAG_RODC_ATTRIBUTE      0x0000200
 
133
 
 
134
#define DS_BEHAVIOR_WIN2000             0
 
135
#define DS_BEHAVIOR_WIN2003_INTERIM     1
 
136
#define DS_BEHAVIOR_WIN2003             2
 
137
#define DS_BEHAVIOR_WIN2008             3