summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamen Mazdrashki <kamenim@samba.org>2011-03-01 02:30:12 +0200
committerKamen Mazdrashki <kamenim@samba.org>2011-03-01 02:59:25 +0100
commitfb7975d590e341a8d301a21e0c4957a376ee6fb0 (patch)
tree5227b1d2d30539926a603846c3e8ec79eaed1466
parentf518dbc0897ba89b8fba1b6cd839e1f36c3c8126 (diff)
downloadsamba-fb7975d590e341a8d301a21e0c4957a376ee6fb0.tar.gz
samba-fb7975d590e341a8d301a21e0c4957a376ee6fb0.tar.bz2
samba-fb7975d590e341a8d301a21e0c4957a376ee6fb0.zip
s4-repl/working_schema: Ignore some attributes when bulding working schema cache
We don't need all object attributes resolved and converted for a working schema to be functional.
-rw-r--r--source4/dsdb/repl/replicated_objects.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/source4/dsdb/repl/replicated_objects.c b/source4/dsdb/repl/replicated_objects.c
index 9f9be3c778..d11de92b1b 100644
--- a/source4/dsdb/repl/replicated_objects.c
+++ b/source4/dsdb/repl/replicated_objects.c
@@ -61,6 +61,14 @@ WERROR dsdb_repl_make_working_schema(struct ldb_context *ldb,
struct dsdb_schema *working_schema;
const struct drsuapi_DsReplicaObjectListItemEx *cur;
int ret, pass_no;
+ uint32_t ignore_attids[] = {
+ DRSUAPI_ATTID_auxiliaryClass,
+ DRSUAPI_ATTID_mayContain,
+ DRSUAPI_ATTID_mustContain,
+ DRSUAPI_ATTID_possSuperiors,
+ DRSUAPI_ATTID_systemPossSuperiors,
+ DRSUAPI_ATTID_INVALID
+ };
/* make a copy of the iniatial_scheam so we don't mess with it */
working_schema = dsdb_schema_copy_shallow(mem_ctx, ldb, initial_schema);
@@ -111,6 +119,7 @@ WERROR dsdb_repl_make_working_schema(struct ldb_context *ldb,
*/
werr = dsdb_convert_object_ex(ldb, working_schema, pfm_remote,
cur, gensec_skey,
+ ignore_attids,
tmp_ctx, &object);
if (!W_ERROR_IS_OK(werr)) {
DEBUG(1,("Warning: Failed to convert schema object %s into ldb msg\n",