summaryrefslogtreecommitdiff
path: root/ctdb/client/client_message.c
diff options
context:
space:
mode:
authorAmitay Isaacs <amitay@gmail.com>2016-04-01 16:51:47 +1100
committerMartin Schwenke <martins@samba.org>2016-07-05 10:53:14 +0200
commit3da13a886ddbc789a618ba909552241fda5ffce9 (patch)
treeb0431d17d2caa739cd16be5dd47cf1d278fb119b /ctdb/client/client_message.c
parent7c8c6ce74e69845fc7a57ab8a678c94d759129f9 (diff)
downloadsamba-3da13a886ddbc789a618ba909552241fda5ffce9.tar.gz
ctdb-client: Add sync version of sending multiple messages
Signed-off-by: Amitay Isaacs <amitay@gmail.com> Reviewed-by: Martin Schwenke <martin@meltin.net>
Diffstat (limited to 'ctdb/client/client_message.c')
-rw-r--r--ctdb/client/client_message.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/ctdb/client/client_message.c b/ctdb/client/client_message.c
index 03fcfc6690f..d35ee4c8925 100644
--- a/ctdb/client/client_message.c
+++ b/ctdb/client/client_message.c
@@ -331,6 +331,34 @@ int ctdb_client_message(TALLOC_CTX *mem_ctx, struct tevent_context *ev,
return 0;
}
+int ctdb_client_message_multi(TALLOC_CTX *mem_ctx,
+ struct tevent_context *ev,
+ struct ctdb_client_context *client,
+ uint32_t *pnn_list, int count,
+ struct ctdb_req_message *message,
+ int **perr_list)
+{
+ struct tevent_req *req;
+ bool status;
+ int ret;
+
+ req = ctdb_client_message_multi_send(mem_ctx, ev, client,
+ pnn_list, count,
+ message);
+ if (req == NULL) {
+ return ENOMEM;
+ }
+
+ tevent_req_poll(req, ev);
+
+ status = ctdb_client_message_multi_recv(req, &ret, mem_ctx, perr_list);
+ if (! status) {
+ return ret;
+ }
+
+ return 0;
+}
+
struct ctdb_client_set_message_handler_state {
struct ctdb_client_context *client;
uint64_t srvid;