mirror of
https://github.com/samba-team/samba.git
synced 2025-03-01 04:58:35 +03:00
s4:dsdb/objectclass_attrs: allow DSDB_CONTROL_SEC_DESC_PROPAGATION_OID on modify
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
This commit is contained in:
parent
60f0e172e3
commit
cb9c7ee79b
@ -600,6 +600,9 @@ static int objectclass_attrs_modify(struct ldb_module *module,
|
||||
struct ldb_request *req)
|
||||
{
|
||||
struct ldb_context *ldb;
|
||||
struct ldb_control *sd_propagation_control;
|
||||
int ret;
|
||||
|
||||
struct oc_context *ac;
|
||||
|
||||
ldb = ldb_module_get_ctx(module);
|
||||
@ -611,6 +614,21 @@ static int objectclass_attrs_modify(struct ldb_module *module,
|
||||
return ldb_next_request(module, req);
|
||||
}
|
||||
|
||||
sd_propagation_control = ldb_request_get_control(req,
|
||||
DSDB_CONTROL_SEC_DESC_PROPAGATION_OID);
|
||||
if (sd_propagation_control != NULL) {
|
||||
if (req->op.mod.message->num_elements != 1) {
|
||||
return ldb_module_operr(module);
|
||||
}
|
||||
ret = strcmp(req->op.mod.message->elements[0].name,
|
||||
"nTSecurityDescriptor");
|
||||
if (ret != 0) {
|
||||
return ldb_module_operr(module);
|
||||
}
|
||||
|
||||
return ldb_next_request(module, req);
|
||||
}
|
||||
|
||||
ac = oc_init_context(module, req);
|
||||
if (ac == NULL) {
|
||||
return ldb_operr(ldb);
|
||||
|
Loading…
x
Reference in New Issue
Block a user