#include "prefixmap.h"
+enum dsdb_dn_format {
+ DSDB_NORMAL_DN,
+ DSDB_BINARY_DN,
+ DSDB_STRING_DN,
+ DSDB_INVALID_DN
+};
+
+
struct dsdb_attribute;
struct dsdb_class;
struct dsdb_schema;
/* set when converting objects under Schema NC */
bool is_schema_nc;
+
+ /* remote prefixMap to be used for drsuapi_to_ldb conversions */
+ const struct dsdb_schema_prefixmap *pfm_remote;
};
WERROR (*validate_ldb)(const struct dsdb_syntax_ctx *ctx,
const struct dsdb_attribute *attr,
const struct ldb_message_element *in);
+ bool auto_normalise;
};
struct dsdb_attribute {
bool isDefunct;
bool systemOnly;
+ bool one_way_link;
+ enum dsdb_dn_format dn_format;
+
/* internal stuff */
const struct dsdb_syntax *syntax;
const struct ldb_schema_attribute *ldb_schema_attribute;
const char *defaultSecurityDescriptor;
uint32_t schemaFlagsEx;
+ uint32_t systemFlags;
struct ldb_val msDs_Schema_Extensions;
bool showInAdvancedViewOnly;
struct {
bool we_are_master;
+ bool update_allowed;
struct ldb_dn *master_dn;
} fsmo;