uint32_t searchFlags;
uint32_t systemFlags;
- BOOL isMemberOfPartialAttributeSet;
+ bool isMemberOfPartialAttributeSet;
uint32_t linkID;
const char *attributeSyntax_oid;
uint32_t oMSyntax;
struct ldb_val oMObjectClass;
- BOOL isSingleValued;
+ bool isSingleValued;
uint32_t rangeLower;
uint32_t rangeUpper;
- BOOL extendedCharsAllowed;
+ bool extendedCharsAllowed;
uint32_t schemaFlagsEx;
struct ldb_val msDs_Schema_Extensions;
- BOOL showInAdvancedViewOnly;
+ bool showInAdvancedViewOnly;
const char *adminDisplayName;
const char *adminDescription;
const char *classDisplayName;
- BOOL isEphemeral;
- BOOL isDefunct;
- BOOL systemOnly;
+ bool isEphemeral;
+ bool isDefunct;
+ bool systemOnly;
/* internal stuff */
const struct dsdb_syntax *syntax;
const char **possSuperiors;
const char **mustContain;
const char **mayContain;
+ const char **possibleInferiors;
const char *defaultSecurityDescriptor;
uint32_t schemaFlagsEx;
struct ldb_val msDs_Schema_Extensions;
- BOOL showInAdvancedViewOnly;
+ bool showInAdvancedViewOnly;
const char *adminDisplayName;
const char *adminDescription;
const char *classDisplayName;
- BOOL defaultHidingValue;
- BOOL isDefunct;
- BOOL systemOnly;
+ bool defaultHidingValue;
+ bool isDefunct;
+ bool systemOnly;
};
struct dsdb_schema_oid_prefix {
struct dsdb_attribute *attributes;
struct dsdb_class *classes;
+
+ struct {
+ bool we_are_master;
+ struct ldb_dn *master_dn;
+ } fsmo;
+
+ struct smb_iconv_convenience *iconv_convenience;
};
+enum dsdb_attr_list_query {
+ DSDB_SCHEMA_ALL_MAY,
+ DSDB_SCHEMA_ALL_MUST,
+ DSDB_SCHEMA_SYS_MAY,
+ DSDB_SCHEMA_SYS_MUST,
+ DSDB_SCHEMA_MAY,
+ DSDB_SCHEMA_MUST,
+ DSDB_SCHEMA_ALL
+};
+
+enum dsdb_schema_convert_target {
+ TARGET_OPENLDAP,
+ TARGET_FEDORA_DS,
+ TARGET_AD_SCHEMA_SUBENTRY
+};
+
+struct dsdb_syntax_map {
+ const char *Standard_OID;
+ const char *AD_OID;
+ const char *equality;
+ const char *substring;
+ const char *comment;
+};
+
+#include "dsdb/schema/proto.h"
+
#endif /* _DSDB_SCHEMA_H */