svn commit: samba r16258 - in branches/SOC/mkhl: .
mkhl at samba.org
mkhl at samba.org
Thu Jun 15 14:53:45 GMT 2006
Author: mkhl
Date: 2006-06-15 14:53:45 +0000 (Thu, 15 Jun 2006)
New Revision: 16258
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=16258
Log:
Take Simo's feedback w.r.t. talloc_steal into account.
Martin
Modified:
branches/SOC/mkhl/,,ldb-unspecial.c-remap-special-DNs.patch
Changeset:
Modified: branches/SOC/mkhl/,,ldb-unspecial.c-remap-special-DNs.patch
===================================================================
--- branches/SOC/mkhl/,,ldb-unspecial.c-remap-special-DNs.patch 2006-06-15 14:31:53 UTC (rev 16257)
+++ branches/SOC/mkhl/,,ldb-unspecial.c-remap-special-DNs.patch 2006-06-15 14:53:45 UTC (rev 16258)
@@ -1,8 +1,8 @@
Index: modules/unspecial.c
===================================================================
---- modules/unspecial.c (Revision 0)
-+++ modules/unspecial.c (Revision 0)
-@@ -0,0 +1,503 @@
+--- modules/unspecial.c (revision 0)
++++ modules/unspecial.c (revision 0)
+@@ -0,0 +1,508 @@
+/*
+ special DN remapping ldb module
+
@@ -193,11 +193,7 @@
+ if (!ldb_dn_is_special(req->op.search.base))
+ return ldb_next_request(module, req);
+
-+ dn = un_remap_special_dn(module, req->op.search.base);
-+ if (dn == NULL)
-+ return LDB_ERR_OPERATIONS_ERROR;
+
-+
+ h = un_init_handle(req, module);
+ if (!h) {
+ talloc_free(dn);
@@ -225,8 +221,14 @@
+ ldb_set_timeout_from_prev_req(module->ldb, req, ac->search_req);
+
+ /* adapt the message */
++ dn = un_remap_special_dn(ac->search_req, req->op.search.base);
++ if (dn == NULL) {
++ talloc_free(ac->search_req);
++ return LDB_ERR_OPERATIONS_ERROR;
++ }
++
+ /* Is that enough or should I copy more members explicitly? */
-+ ac->search_req->op.search.base = talloc_steal(ac->search_req, dn);
++ ac->search_req->op.search.base = dn;
+
+ /* ac->step = UN_DO_SEARCH; */
+
@@ -244,12 +246,6 @@
+ if (!ldb_dn_is_special(req->op.add.message->dn))
+ return ldb_next_request(module, req);
+
-+ msg = un_msg_copy_with_dn(module, req->op.add.message,
-+ un_remap_special_dn(module,
-+ req->op.add.message->dn));
-+ if (msg == NULL)
-+ return LDB_ERR_OPERATIONS_ERROR;
-+
+ h = un_init_handle(req, module);
+ if (!h) {
+ talloc_free(msg);
@@ -277,8 +273,16 @@
+ ldb_set_timeout_from_prev_req(module->ldb, req, ac->down_req);
+
+ /* adapt the message */
-+ ac->down_req->op.add.message = talloc_steal(ac->down_req, msg);
++ msg = un_msg_copy_with_dn(ac->down_req, req->op.add.message,
++ un_remap_special_dn(ac->down_req,
++ req->op.add.message->dn));
++ if (msg == NULL) {
++ talloc_free(ac->down_req);
++ return LDB_ERR_OPERATIONS_ERROR;
++ }
+
++ ac->down_req->op.add.message = msg;
++
+ /* ac->step = UN_DO_REQ; */
+
+ return ldb_next_request(module, ac->down_req);
@@ -295,13 +299,6 @@
+ if (!ldb_dn_is_special(req->op.mod.message->dn))
+ return ldb_next_request(module, req);
+
-+ msg = un_msg_copy_with_dn(module, req->op.mod.message,
-+ un_remap_special_dn(module,
-+ req->op.mod.message->dn));
-+ if (msg == NULL) {
-+ return LDB_ERR_OPERATIONS_ERROR;
-+ }
-+
+ h = un_init_handle(req, module);
+ if (!h) {
+ talloc_free(msg);
@@ -329,8 +326,16 @@
+ ldb_set_timeout_from_prev_req(module->ldb, req, ac->down_req);
+
+ /* adapt the message */
-+ ac->down_req->op.mod.message = talloc_steal(ac->down_req, msg);
++ msg = un_msg_copy_with_dn(ac->down_req, req->op.mod.message,
++ un_remap_special_dn(ac->down_req,
++ req->op.mod.message->dn));
++ if (msg == NULL) {
++ talloc_free(ac->down_req);
++ return LDB_ERR_OPERATIONS_ERROR;
++ }
+
++ ac->down_req->op.mod.message = msg;
++
+ /* ac->step = UN_DO_REQ; */
+
+ return ldb_next_request(module, ac->down_req);
More information about the samba-cvs
mailing list