diff options
author | Amitay Isaacs <amitay@gmail.com> | 2016-04-01 16:51:47 +1100 |
---|---|---|
committer | Martin Schwenke <martins@samba.org> | 2016-07-05 10:53:14 +0200 |
commit | 3da13a886ddbc789a618ba909552241fda5ffce9 (patch) | |
tree | b0431d17d2caa739cd16be5dd47cf1d278fb119b /ctdb/client/client_message.c | |
parent | 7c8c6ce74e69845fc7a57ab8a678c94d759129f9 (diff) | |
download | samba-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.c | 28 |
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; |