struct ldb_kv_parse_data_unpack_ctx {
struct ldb_message *msg;
struct ldb_module *module;
+ struct ldb_kv_private *ldb_kv;
unsigned int unpack_flags;
};
struct ldb_context *ldb = ldb_module_get_ctx(ctx->module);
struct ldb_val data_parse = data;
- struct ldb_kv_private *ldb_kv =
- talloc_get_type(ldb_module_get_private(ctx->module), struct ldb_kv_private);
+ struct ldb_kv_private *ldb_kv = ctx->ldb_kv;
if ((ctx->unpack_flags & LDB_UNPACK_DATA_FLAG_NO_DATA_ALLOC)) {
if ((ldb_kv->kv_ops->options & LDB_KV_OPTION_STABLE_READ_LOCK) &&
struct ldb_kv_parse_data_unpack_ctx ctx = {
.msg = msg,
.module = module,
- .unpack_flags = unpack_flags
+ .unpack_flags = unpack_flags,
+ .ldb_kv = ldb_kv
};
memset(msg, 0, sizeof(*msg));