diff options
author | Matthias Dieter Wallnöfer <mdw@samba.org> | 2010-06-20 15:13:36 +0200 |
---|---|---|
committer | Matthias Dieter Wallnöfer <mdw@samba.org> | 2010-06-20 18:52:31 +0200 |
commit | 449370db545f189449dbce75fd73271caf5ab187 (patch) | |
tree | 23d2704578975c11aef054d4a4b0d8cc782464b1 /source4 | |
parent | 9803c89ee28b4b4d6e4514b362aa60adb7f93366 (diff) | |
download | samba-449370db545f189449dbce75fd73271caf5ab187.tar.gz samba-449370db545f189449dbce75fd73271caf5ab187.tar.bz2 samba-449370db545f189449dbce75fd73271caf5ab187.zip |
s4:ldap_backend.c - now also the LDAP server supports controls on delete operations
Diffstat (limited to 'source4')
-rw-r--r-- | source4/ldap_server/ldap_backend.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source4/ldap_server/ldap_backend.c b/source4/ldap_server/ldap_backend.c index e009641cdd..c1bd630a3a 100644 --- a/source4/ldap_server/ldap_backend.c +++ b/source4/ldap_server/ldap_backend.c @@ -363,16 +363,18 @@ static int ldb_mod_req_with_controls(struct ldb_context *ldb, return ret; } -static int ldb_delete_with_context(struct ldb_context *ldb, - struct ldb_dn *dn, - void *context) +/* create and execute a delete request */ +static int ldb_del_req_with_controls(struct ldb_context *ldb, + struct ldb_dn *dn, + struct ldb_control **controls, + void *context) { struct ldb_request *req; int ret; ret = ldb_build_del_req(&req, ldb, ldb, dn, - NULL, + controls, context, ldb_modify_default_callback, NULL); @@ -886,7 +888,7 @@ reply: if (result == LDAP_SUCCESS) { res = talloc_zero(local_ctx, struct ldb_result); NT_STATUS_HAVE_NO_MEMORY(res); - ldb_ret = ldb_delete_with_context(samdb, dn, res); + ldb_ret = ldb_del_req_with_controls(samdb, dn, call->request->controls, res); result = map_ldb_error(local_ctx, ldb_ret, ldb_errstring(samdb), &errstr); } |