It always de-references the module to find the ldb anyway.
Andrew Bartlett
return -1;
}
- ret = ltdb_unpack_data(module, &data, msg);
+ ret = ltdb_unpack_data(ldb, &data, msg);
if (ret != 0) {
ldb_debug(ldb, LDB_DEBUG_ERROR, "Invalid data for index %s\n",
ldb_dn_get_linearized(msg->dn));
Free with ltdb_unpack_data_free()
*/
-int ltdb_unpack_data(struct ldb_module *module,
+int ltdb_unpack_data(struct ldb_context *ldb,
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;
{
struct ltdb_parse_data_unpack_ctx *ctx = private_data;
- int ret = ltdb_unpack_data(ctx->module, &data, ctx->msg);
+ struct ldb_context *ldb = ldb_module_get_ctx(ctx->module);
+ int ret = ltdb_unpack_data(ldb, &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;
}
/* unpack the record */
- ret = ltdb_unpack_data(ac->module, &data, msg);
+ ret = ltdb_unpack_data(ldb, &data, msg);
if (ret == -1) {
talloc_free(msg);
return -1;
goto done;
}
- ret = ltdb_unpack_data(module, &tdb_data, msg2);
+ ret = ltdb_unpack_data(ldb_module_get_ctx(module), &tdb_data, msg2);
free(tdb_data.dptr);
if (ret == -1) {
ret = LDB_ERR_OTHER;
TDB_DATA *data);
void ltdb_unpack_data_free(struct ldb_module *module,
struct ldb_message *message);
-int ltdb_unpack_data(struct ldb_module *module,
+int ltdb_unpack_data(struct ldb_context *ldb,
const TDB_DATA *data,
struct ldb_message *message);