summaryrefslogtreecommitdiffstats
path: root/source3/include/messages.h
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2014-11-13 11:25:40 +0000
committerJeremy Allison <jra@samba.org>2014-12-16 18:56:03 +0100
commitcf2c12baa8a5031fbe419399e1a00e89c465cf52 (patch)
tree8ddcde4b34f149437dd0ae05415af4cd9b9b93f8 /source3/include/messages.h
parent28f750643bac2049eeeaab23d7d2d9a5a6256bcd (diff)
downloadsamba-cf2c12baa8a5031fbe419399e1a00e89c465cf52.tar.gz
samba-cf2c12baa8a5031fbe419399e1a00e89c465cf52.tar.xz
samba-cf2c12baa8a5031fbe419399e1a00e89c465cf52.zip
messaging3: Add messaging_handler_send/recv
This repeatedly listens on msg_type. It's similar to messaging_register with talloc based autocleanup. The handler is free to talloc_move a way the record for later use. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/include/messages.h')
-rw-r--r--source3/include/messages.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/include/messages.h b/source3/include/messages.h
index 3db675611e..6b5e3da71e 100644
--- a/source3/include/messages.h
+++ b/source3/include/messages.h
@@ -150,6 +150,14 @@ struct tevent_req *messaging_read_send(TALLOC_CTX *mem_ctx,
int messaging_read_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx,
struct messaging_rec **presult);
+struct tevent_req *messaging_handler_send(
+ TALLOC_CTX *mem_ctx, struct tevent_context *ev,
+ struct messaging_context *msg_ctx, uint32_t msg_type,
+ bool (*handler)(struct messaging_context *msg_ctx,
+ struct messaging_rec **rec, void *private_data),
+ void *private_data);
+int messaging_handler_recv(struct tevent_req *req);
+
int messaging_cleanup(struct messaging_context *msg_ctx, pid_t pid);
bool messaging_parent_dgm_cleanup_init(struct messaging_context *msg);