summaryrefslogtreecommitdiffstats
path: root/source3/lib
diff options
context:
space:
mode:
Diffstat (limited to 'source3/lib')
-rw-r--r--source3/lib/messages.c6
-rw-r--r--source3/lib/messages_dgm.c9
2 files changed, 12 insertions, 3 deletions
diff --git a/source3/lib/messages.c b/source3/lib/messages.c
index 9e77009d02..db7257dba5 100644
--- a/source3/lib/messages.c
+++ b/source3/lib/messages.c
@@ -862,4 +862,10 @@ static void mess_parent_dgm_cleanup_done(struct tevent_req *req)
tevent_req_set_callback(req, mess_parent_dgm_cleanup_done, msg);
}
+struct messaging_backend *messaging_local_backend(
+ struct messaging_context *msg_ctx)
+{
+ return msg_ctx->local;
+}
+
/** @} **/
diff --git a/source3/lib/messages_dgm.c b/source3/lib/messages_dgm.c
index 2f2647e37f..cf6e19075a 100644
--- a/source3/lib/messages_dgm.c
+++ b/source3/lib/messages_dgm.c
@@ -369,8 +369,9 @@ static void messaging_dgm_recv(struct unix_msg_ctx *ctx,
NTSTATUS messaging_dgm_cleanup(struct messaging_context *msg_ctx, pid_t pid)
{
+ struct messaging_backend *be = messaging_local_backend(msg_ctx);
struct messaging_dgm_context *ctx = talloc_get_type_abort(
- msg_ctx->local->private_data, struct messaging_dgm_context);
+ be->private_data, struct messaging_dgm_context);
char *lockfile_name, *socket_name;
int fd, ret;
struct flock lck = {};
@@ -421,8 +422,9 @@ NTSTATUS messaging_dgm_cleanup(struct messaging_context *msg_ctx, pid_t pid)
NTSTATUS messaging_dgm_wipe(struct messaging_context *msg_ctx)
{
+ struct messaging_backend *be = messaging_local_backend(msg_ctx);
struct messaging_dgm_context *ctx = talloc_get_type_abort(
- msg_ctx->local->private_data, struct messaging_dgm_context);
+ be->private_data, struct messaging_dgm_context);
char *msgdir_name;
DIR *msgdir;
struct dirent *dp;
@@ -477,7 +479,8 @@ void *messaging_dgm_register_tevent_context(TALLOC_CTX *mem_ctx,
struct messaging_context *msg_ctx,
struct tevent_context *ev)
{
+ struct messaging_backend *be = messaging_local_backend(msg_ctx);
struct messaging_dgm_context *ctx = talloc_get_type_abort(
- msg_ctx->local->private_data, struct messaging_dgm_context);
+ be->private_data, struct messaging_dgm_context);
return poll_funcs_tevent_register(mem_ctx, ctx->msg_callbacks, ev);
}