diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-09-27 02:27:54 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2008-09-29 04:15:11 +0200 |
commit | ee2bcfacdf32b0c55c6a78ae1ad7b55699611d1b (patch) | |
tree | beea7055dd44caa69024cd1efdcee9f0391a9b6c /source4/dsdb/samdb/ldb_modules/schema_fsmo.c | |
parent | a9a59f5f3d7f82a8065424310d3b32d796a43e75 (diff) | |
download | samba-ee2bcfacdf32b0c55c6a78ae1ad7b55699611d1b.tar.gz samba-ee2bcfacdf32b0c55c6a78ae1ad7b55699611d1b.tar.bz2 samba-ee2bcfacdf32b0c55c6a78ae1ad7b55699611d1b.zip |
s4:dsdb: passdown DSDB_CONTROL_REPLICATED_UPDATE_OID for replicated updates
We need to make sure replicated updates are handled differently
in some situations, e.g. we should bypass the schema checks.
metze
Diffstat (limited to 'source4/dsdb/samdb/ldb_modules/schema_fsmo.c')
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/schema_fsmo.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/schema_fsmo.c b/source4/dsdb/samdb/ldb_modules/schema_fsmo.c index 968b19c038..4b6e9e1d47 100644 --- a/source4/dsdb/samdb/ldb_modules/schema_fsmo.c +++ b/source4/dsdb/samdb/ldb_modules/schema_fsmo.c @@ -152,6 +152,16 @@ static int schema_fsmo_add(struct ldb_module *module, struct ldb_request *req) uint32_t id32; WERROR status; + /* special objects should always go through */ + if (ldb_dn_is_special(req->op.add.message->dn)) { + return ldb_next_request(module, req); + } + + /* replicated update should always go through */ + if (ldb_request_get_control(req, DSDB_CONTROL_REPLICATED_UPDATE_OID)) { + return ldb_next_request(module, req); + } + schema = dsdb_get_schema(module->ldb); if (!schema) { return ldb_next_request(module, req); |