summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/modules
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2006-05-20 19:38:01 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:08:15 -0500
commit5e3bb665cad17395f360f83fa1cf0692528c3239 (patch)
tree42674a90eae9242f9d27f32145a1b09e5704a8df /source4/lib/ldb/modules
parent6d0969aa1adff4c7f134bd6e3e42997e72b41cf6 (diff)
downloadsamba-5e3bb665cad17395f360f83fa1cf0692528c3239.tar.gz
samba-5e3bb665cad17395f360f83fa1cf0692528c3239.tar.bz2
samba-5e3bb665cad17395f360f83fa1cf0692528c3239.zip
r15762: It make no sense for rdn_name to implement modify, it will need to implement rename ...
(This used to be commit bf260f2a84f9c1f749798068168a22c86ab2e7b2)
Diffstat (limited to 'source4/lib/ldb/modules')
-rw-r--r--source4/lib/ldb/modules/rdn_name.c138
1 files changed, 0 insertions, 138 deletions
diff --git a/source4/lib/ldb/modules/rdn_name.c b/source4/lib/ldb/modules/rdn_name.c
index 24e3430254..4f0b11cd51 100644
--- a/source4/lib/ldb/modules/rdn_name.c
+++ b/source4/lib/ldb/modules/rdn_name.c
@@ -132,67 +132,6 @@ static int rdn_name_add(struct ldb_module *module, struct ldb_request *req)
return ret;
}
-static int rdn_name_modify(struct ldb_module *module, struct ldb_request *req)
-{
- const struct ldb_message *msg = req->op.mod.message;
- struct ldb_message *msg2;
- struct ldb_message_element *attribute;
- struct ldb_dn_component *rdn;
- int ret, i;
-
- ldb_debug(module->ldb, LDB_DEBUG_TRACE, "rdn_name_modify_record\n");
-
- /* do not manipulate our control entries */
- if (ldb_dn_is_special(msg->dn)) {
- return ldb_next_request(module, req);
- }
-
- /* Perhaps someone above us knows better */
- if ((attribute = rdn_name_find_attribute(msg, "name")) != NULL ) {
- return ldb_next_request(module, req);
- }
-
- msg2 = talloc(module, struct ldb_message);
- if (!msg2) {
- return -1;
- }
-
- msg2->dn = msg->dn;
- msg2->num_elements = msg->num_elements;
- msg2->private_data = msg->private_data;
- msg2->elements = talloc_array(msg2, struct ldb_message_element, msg2->num_elements);
- for (i = 0; i < msg2->num_elements; i++) {
- msg2->elements[i] = msg->elements[i];
- }
-
- rdn = ldb_dn_get_rdn(msg2, msg2->dn);
- if (!rdn) {
- talloc_free(msg2);
- return -1;
- }
-
- if (ldb_msg_add_value(msg2, "name", &rdn->value) != 0) {
- talloc_free(msg2);
- return -1;
- }
-
- attribute = rdn_name_find_attribute(msg2, "name");
- if (!attribute) {
- talloc_free(msg2);
- return -1;
- }
-
- attribute->flags = LDB_FLAG_MOD_REPLACE;
-
- req->op.add.message = msg2;
- ret = ldb_next_request(module, req);
- req->op.add.message = msg;
-
- talloc_free(msg2);
-
- return ret;
-}
-
static int rdn_name_add_async(struct ldb_module *module, struct ldb_request *req)
{
struct ldb_request *down_req;
@@ -281,77 +220,6 @@ static int rdn_name_add_async(struct ldb_module *module, struct ldb_request *req
return ret;
}
-static int rdn_name_modify_async(struct ldb_module *module, struct ldb_request *req)
-{
- struct ldb_request *down_req;
- struct ldb_message *msg;
- struct ldb_message_element *attribute;
- struct ldb_dn_component *rdn;
- int ret;
-
- ldb_debug(module->ldb, LDB_DEBUG_TRACE, "rdn_name_modify_record\n");
-
- /* do not manipulate our control entries */
- if (ldb_dn_is_special(req->op.mod.message->dn)) {
- return ldb_next_request(module, req);
- }
-
- /* Perhaps someone above us knows better */
- if ((attribute = rdn_name_find_attribute(req->op.mod.message, "name")) != NULL ) {
- return ldb_next_request(module, req);
- }
-
- /* FIXME: are we sure we wont to change "name" on each and every modify operation ?? */
- down_req = talloc(module, struct ldb_request);
- if (down_req == NULL) {
- return LDB_ERR_OPERATIONS_ERROR;
- }
-
- msg = ldb_msg_copy_shallow(down_req, req->op.add.message);
- if (msg == NULL) {
- return LDB_ERR_OPERATIONS_ERROR;
- }
-
- rdn = ldb_dn_get_rdn(msg, msg->dn);
- if (rdn == NULL) {
- talloc_free(down_req);
- return LDB_ERR_OPERATIONS_ERROR;
- }
-
- if (ldb_msg_add_value(msg, "name", &rdn->value) != 0) {
- talloc_free(down_req);
- return LDB_ERR_OPERATIONS_ERROR;
- }
-
- attribute = rdn_name_find_attribute(msg, "name");
- if (!attribute) {
- talloc_free(down_req);
- return LDB_ERR_OPERATIONS_ERROR;
- }
-
- attribute->flags = LDB_FLAG_MOD_REPLACE;
-
- down_req->op.add.message = msg;
-
- down_req->controls = req->controls;
- down_req->creds = req->creds;
-
- down_req->async.context = req->async.context;
- down_req->async.callback = req->async.callback;
- down_req->async.timeout = req->async.timeout;
-
- /* go on with the call chain */
- ret = ldb_next_request(module, down_req);
-
- /* do not free down_req as the call results may be linked to it,
- * it will be freed when the upper level request get freed */
- if (ret == LDB_SUCCESS) {
- req->async.handle = down_req->async.handle;
- }
-
- return ret;
-}
-
static int rdn_name_request(struct ldb_module *module, struct ldb_request *req)
{
switch (req->operation) {
@@ -359,15 +227,9 @@ static int rdn_name_request(struct ldb_module *module, struct ldb_request *req)
case LDB_REQ_ADD:
return rdn_name_add(module, req);
- case LDB_REQ_MODIFY:
- return rdn_name_modify(module, req);
-
case LDB_ASYNC_ADD:
return rdn_name_add_async(module, req);
- case LDB_ASYNC_MODIFY:
- return rdn_name_modify_async(module, req);
-
default:
return ldb_next_request(module, req);