[PATCH 3/3] Revert "ldb: Change ltdb_unpack_data to take an ldb_context"

Simo Sorce idra at samba.org
Tue Oct 30 20:50:40 MDT 2012


This reverts commit cc6d0decc7980028293168aee267e7610752fc80.
---
 lib/ldb/ldb_tdb/ldb_index.c  | 2 +-
 lib/ldb/ldb_tdb/ldb_pack.c   | 4 +++-
 lib/ldb/ldb_tdb/ldb_search.c | 6 +++---
 lib/ldb/ldb_tdb/ldb_tdb.c    | 2 +-
 lib/ldb/ldb_tdb/ldb_tdb.h    | 2 +-
 5 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/lib/ldb/ldb_tdb/ldb_index.c b/lib/ldb/ldb_tdb/ldb_index.c
index 50c6ded56a9369395e66ad7cfdff274fc5678f54..d2ef4b89a69b2f54a20331ac9685cc9277bb6a60 100644
--- a/lib/ldb/ldb_tdb/ldb_index.c
+++ b/lib/ldb/ldb_tdb/ldb_index.c
@@ -1509,7 +1509,7 @@ static int re_index(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *
 		return -1;
 	}
 
-	ret = ltdb_unpack_data(ldb, &data, msg);
+	ret = ltdb_unpack_data(module, &data, msg);
 	if (ret != 0) {
 		ldb_debug(ldb, LDB_DEBUG_ERROR, "Invalid data for index %s\n",
 						ldb_dn_get_linearized(msg->dn));
diff --git a/lib/ldb/ldb_tdb/ldb_pack.c b/lib/ldb/ldb_tdb/ldb_pack.c
index 003be1592ef0394d3bf4faa5fc8b903822c33f21..7c13065aeeff39611bd8eb823e4e21e287a5d29e 100644
--- a/lib/ldb/ldb_tdb/ldb_pack.c
+++ b/lib/ldb/ldb_tdb/ldb_pack.c
@@ -154,16 +154,18 @@ int ltdb_pack_data(struct ldb_module *module,
 
   Free with ltdb_unpack_data_free()
 */
-int ltdb_unpack_data(struct ldb_context *ldb,
+int ltdb_unpack_data(struct ldb_module *module,
 		     const TDB_DATA *data,
 		     struct ldb_message *message)
 {
+	struct ldb_context *ldb;
 	uint8_t *p;
 	unsigned int remaining;
 	unsigned int i, j;
 	unsigned format;
 	size_t len;
 
+	ldb = ldb_module_get_ctx(module);
 	message->elements = NULL;
 
 	p = data->dptr;
diff --git a/lib/ldb/ldb_tdb/ldb_search.c b/lib/ldb/ldb_tdb/ldb_search.c
index 4fb85103779eea50e81312cff3180c6d85e678cf..703ad6ad0ea6e353c5fe7b7d3634fd7410fc3691 100644
--- a/lib/ldb/ldb_tdb/ldb_search.c
+++ b/lib/ldb/ldb_tdb/ldb_search.c
@@ -244,9 +244,9 @@ static int ltdb_parse_data_unpack(TDB_DATA key, TDB_DATA data,
 {
 	struct ltdb_parse_data_unpack_ctx *ctx = private_data;
 
-	struct ldb_context *ldb = ldb_module_get_ctx(ctx->module);
-	int ret = ltdb_unpack_data(ldb, &data, ctx->msg);
+	int ret = ltdb_unpack_data(ctx->module, &data, ctx->msg);
 	if (ret == -1) {
+		struct ldb_context *ldb = ldb_module_get_ctx(ctx->module);
 		ldb_debug(ldb, LDB_DEBUG_ERROR, "Invalid data for index %*.*s\n",
 			  (int)key.dsize, (int)key.dsize, key.dptr);
 		return LDB_ERR_OPERATIONS_ERROR;		
@@ -440,7 +440,7 @@ static int search_func(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, voi
 	}
 
 	/* unpack the record */
-	ret = ltdb_unpack_data(ldb, &data, msg);
+	ret = ltdb_unpack_data(ac->module, &data, msg);
 	if (ret == -1) {
 		talloc_free(msg);
 		return -1;
diff --git a/lib/ldb/ldb_tdb/ldb_tdb.c b/lib/ldb/ldb_tdb/ldb_tdb.c
index 0e7c74c640981f6a82d405df790ec01418e48a5c..3c181509c37c7c4f0a4bc6054fa77805136eeb9d 100644
--- a/lib/ldb/ldb_tdb/ldb_tdb.c
+++ b/lib/ldb/ldb_tdb/ldb_tdb.c
@@ -693,7 +693,7 @@ int ltdb_modify_internal(struct ldb_module *module,
 		goto done;
 	}
 
-	ret = ltdb_unpack_data(ldb_module_get_ctx(module), &tdb_data, msg2);
+	ret = ltdb_unpack_data(module, &tdb_data, msg2);
 	free(tdb_data.dptr);
 	if (ret == -1) {
 		ret = LDB_ERR_OTHER;
diff --git a/lib/ldb/ldb_tdb/ldb_tdb.h b/lib/ldb/ldb_tdb/ldb_tdb.h
index ea85ca1be7adbff13816036afe0a361f9f4ad363..c89dd7f1ae48bc5ac3266592b85b478375a55b80 100644
--- a/lib/ldb/ldb_tdb/ldb_tdb.h
+++ b/lib/ldb/ldb_tdb/ldb_tdb.h
@@ -99,7 +99,7 @@ int ltdb_pack_data(struct ldb_module *module,
 		   TDB_DATA *data);
 void ltdb_unpack_data_free(struct ldb_module *module,
 			   struct ldb_message *message);
-int ltdb_unpack_data(struct ldb_context *ldb,
+int ltdb_unpack_data(struct ldb_module *module,
 		     const TDB_DATA *data,
 		     struct ldb_message *message);
 
-- 
1.7.11.7



More information about the samba-technical mailing list