From 449370db545f189449dbce75fd73271caf5ab187 Mon Sep 17 00:00:00 2001 From: Matthias Dieter Wallnöfer Date: Sun, 20 Jun 2010 15:13:36 +0200 Subject: s4:ldap_backend.c - now also the LDAP server supports controls on delete operations --- source4/ldap_server/ldap_backend.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'source4/ldap_server') 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); } -- cgit