From fbd3fd343bd0d1c6c03f8ae82ae79ad5580af421 Mon Sep 17 00:00:00 2001 From: Amitay Isaacs Date: Wed, 18 Nov 2015 15:15:16 +1100 Subject: [PATCH] ctdb-client: Remove TALLOC_CTX argument from sync functions There is no allocated memory returned from these functions. Signed-off-by: Amitay Isaacs Reviewed-by: Martin Schwenke --- ctdb/client/client.h | 6 ++---- ctdb/client/client_message.c | 20 ++++++++++++++++---- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/ctdb/client/client.h b/ctdb/client/client.h index 82d543a2f6b..df0b9b8bee7 100644 --- a/ctdb/client/client.h +++ b/ctdb/client/client.h @@ -100,14 +100,12 @@ struct tevent_req *ctdb_client_remove_message_handler_send( bool ctdb_client_remove_message_handler_recv(struct tevent_req *req, int *perr); -int ctdb_client_set_message_handler(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, +int ctdb_client_set_message_handler(struct tevent_context *ev, struct ctdb_client_context *client, uint64_t srvid, srvid_handler_fn handler, void *private_data); -int ctdb_client_remove_message_handler(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, +int ctdb_client_remove_message_handler(struct tevent_context *ev, struct ctdb_client_context *client, uint64_t srvid, void *private_data); diff --git a/ctdb/client/client_message.c b/ctdb/client/client_message.c index c316f42ff33..d5338420cd4 100644 --- a/ctdb/client/client_message.c +++ b/ctdb/client/client_message.c @@ -371,16 +371,22 @@ bool ctdb_client_remove_message_handler_recv(struct tevent_req *req, int *perr) return true; } -int ctdb_client_set_message_handler(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, +int ctdb_client_set_message_handler(struct tevent_context *ev, struct ctdb_client_context *client, uint64_t srvid, srvid_handler_fn handler, void *private_data) { + TALLOC_CTX *mem_ctx; int ret; + mem_ctx = talloc_new(client); + if (mem_ctx == NULL) { + return ENOMEM; + } + ret = ctdb_ctrl_register_srvid(mem_ctx, ev, client, client->pnn, tevent_timeval_zero(), srvid); + talloc_free(mem_ctx); if (ret != 0) { return ret; } @@ -389,15 +395,21 @@ int ctdb_client_set_message_handler(TALLOC_CTX *mem_ctx, handler, private_data); } -int ctdb_client_remove_message_handler(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, +int ctdb_client_remove_message_handler(struct tevent_context *ev, struct ctdb_client_context *client, uint64_t srvid, void *private_data) { + TALLOC_CTX *mem_ctx; int ret; + mem_ctx = talloc_new(client); + if (mem_ctx == NULL) { + return ENOMEM; + } + ret = ctdb_ctrl_deregister_srvid(mem_ctx, ev, client, client->pnn, tevent_timeval_zero(), srvid); + talloc_free(mem_ctx); if (ret != 0) { return ret; }