diff options
author | Stefan Metzmacher <metze@samba.org> | 2014-10-29 11:53:06 +0100 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2014-11-14 23:27:04 +0100 |
commit | 8ac49f9f05415a49619e160c468a3fa261b0320b (patch) | |
tree | 14841deb77c4ec8392a597f12a6c1b71e523fab8 | |
parent | edc6a89398f1fff9de55e77e84b441bfab955869 (diff) | |
download | samba-8ac49f9f05415a49619e160c468a3fa261b0320b.tar.gz samba-8ac49f9f05415a49619e160c468a3fa261b0320b.tar.xz samba-8ac49f9f05415a49619e160c468a3fa261b0320b.zip |
lib/ldb: fix compiler warnings in ldb_tdb.c
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
-rw-r--r-- | lib/ldb/ldb_tdb/ldb_tdb.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/ldb/ldb_tdb/ldb_tdb.c b/lib/ldb/ldb_tdb/ldb_tdb.c index d3c83f5d57..bcb8f0fb14 100644 --- a/lib/ldb/ldb_tdb/ldb_tdb.c +++ b/lib/ldb/ldb_tdb/ldb_tdb.c @@ -264,6 +264,7 @@ int ltdb_store(struct ldb_module *module, const struct ldb_message *msg, int flg void *data = ldb_module_get_private(module); struct ltdb_private *ltdb = talloc_get_type(data, struct ltdb_private); TDB_DATA tdb_key, tdb_data; + struct ldb_val ldb_data; int ret = LDB_SUCCESS; tdb_key = ltdb_key(module, msg->dn); @@ -272,12 +273,15 @@ int ltdb_store(struct ldb_module *module, const struct ldb_message *msg, int flg } ret = ldb_pack_data(ldb_module_get_ctx(module), - msg, (struct ldb_val *)&tdb_data); + msg, &ldb_data); if (ret == -1) { talloc_free(tdb_key.dptr); return LDB_ERR_OTHER; } + tdb_data.dptr = ldb_data.data; + tdb_data.dsize = ldb_data.length; + ret = tdb_store(ltdb->tdb, tdb_key, tdb_data, flgs); if (ret != 0) { ret = ltdb_err_map(tdb_error(ltdb->tdb)); @@ -286,7 +290,7 @@ int ltdb_store(struct ldb_module *module, const struct ldb_message *msg, int flg done: talloc_free(tdb_key.dptr); - talloc_free(tdb_data.dptr); + talloc_free(ldb_data.data); return ret; } @@ -673,6 +677,7 @@ int ltdb_modify_internal(struct ldb_module *module, void *data = ldb_module_get_private(module); struct ltdb_private *ltdb = talloc_get_type(data, struct ltdb_private); TDB_DATA tdb_key, tdb_data; + struct ldb_val ldb_data; struct ldb_message *msg2; unsigned int i, j, k; int ret = LDB_SUCCESS, idx; @@ -701,7 +706,10 @@ int ltdb_modify_internal(struct ldb_module *module, goto done; } - ret = ldb_unpack_data(ldb_module_get_ctx(module), (struct ldb_val *)&tdb_data, msg2); + ldb_data.data = tdb_data.dptr; + ldb_data.length = tdb_data.dsize; + + ret = ldb_unpack_data(ldb_module_get_ctx(module), &ldb_data, msg2); free(tdb_data.dptr); if (ret == -1) { ret = LDB_ERR_OTHER; |