diff options
author | Volker Lendecke <vl@samba.org> | 2012-02-15 13:53:07 +0100 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2012-04-17 10:21:01 +0200 |
commit | 41712599e0f33096ccc81e7cd520e66dcf91a424 (patch) | |
tree | a25c5e936110a07df7618147ec64deebb4510f23 /source3/lib | |
parent | 48a485b6396ba020df1c47cbecd6c9fe442ac8a5 (diff) | |
download | samba-41712599e0f33096ccc81e7cd520e66dcf91a424.tar.gz samba-41712599e0f33096ccc81e7cd520e66dcf91a424.tar.bz2 samba-41712599e0f33096ccc81e7cd520e66dcf91a424.zip |
s3: Add messaging_tdb_event()
This is a void* that represents a signal handler attached to some
custom tevent_context. This is necessary to make the tdb based
messaging infrastructure trigger its business when we are sitting in
tevent_loop_once for an event context that is not the main one in the
messaging context.
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/messages_local.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source3/lib/messages_local.c b/source3/lib/messages_local.c index b398870e1f..e20024ae59 100644 --- a/source3/lib/messages_local.c +++ b/source3/lib/messages_local.c @@ -77,6 +77,16 @@ static void messaging_tdb_signal_handler(struct tevent_context *ev_ctx, message_dispatch(ctx->msg_ctx); } +void *messaging_tdb_event(TALLOC_CTX *mem_ctx, struct messaging_context *msg, + struct tevent_context *ev) +{ + struct messaging_tdb_context *msg_tdb = talloc_get_type_abort( + msg->local->private_data, struct messaging_tdb_context); + + return tevent_add_signal(ev, mem_ctx, SIGUSR1, 0, + messaging_tdb_signal_handler, msg_tdb); +} + /**************************************************************************** Initialise the messaging functions. ****************************************************************************/ |