From 509afd4855ce679aa56f9927f80bbd302be38a55 Mon Sep 17 00:00:00 2001 From: Amitay Isaacs Date: Thu, 1 Jun 2017 14:22:03 +1000 Subject: [PATCH] ctdb-client: Move eventd API to a separate header Signed-off-by: Amitay Isaacs Reviewed-by: Martin Schwenke --- ctdb/client/client.h | 66 --------------------------- ctdb/client/client_event.c | 2 +- ctdb/client/client_event.h | 92 ++++++++++++++++++++++++++++++++++++++ ctdb/tools/ctdb_event.c | 2 +- 4 files changed, 94 insertions(+), 68 deletions(-) create mode 100644 ctdb/client/client_event.h diff --git a/ctdb/client/client.h b/ctdb/client/client.h index f0914c4f5ec..6d3d91172d6 100644 --- a/ctdb/client/client.h +++ b/ctdb/client/client.h @@ -343,70 +343,4 @@ int ctdb_server_id_exists(TALLOC_CTX *mem_ctx, struct tevent_context *ev, struct ctdb_client_context *client, struct ctdb_server_id *sid, bool *exists); -/* from client/client_event.c */ - -struct ctdb_event_context; - -int ctdb_event_init(TALLOC_CTX *mem_ctx, struct tevent_context *ev, - const char *sockpath, struct ctdb_event_context **out); - -void ctdb_event_set_disconnect_callback(struct ctdb_event_context *eclient, - ctdb_client_callback_func_t callback, - void *private_data); - -struct tevent_req *ctdb_event_msg_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient, - struct ctdb_event_request *request); - -bool ctdb_event_msg_recv(struct tevent_req *req, int *perr, - TALLOC_CTX *mem_ctx, - struct ctdb_event_reply **reply); - -struct tevent_req *ctdb_event_run_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient, - enum ctdb_event event, - uint32_t timeout, const char *arg_str); - -bool ctdb_event_run_recv(struct tevent_req *req, int *perr, int32_t *result); - -struct tevent_req *ctdb_event_status_send(TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient, - enum ctdb_event event, - enum ctdb_event_status_state state); - -bool ctdb_event_status_recv(struct tevent_req *req, int *perr, - int32_t *result, int *event_result, - TALLOC_CTX *mem_ctx, - struct ctdb_script_list **script_list); - -struct tevent_req *ctdb_event_script_list_send( - TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient); - -bool ctdb_event_script_list_recv(struct tevent_req *req, int *perr, - int32_t *result, TALLOC_CTX *mem_ctx, - struct ctdb_script_list **script_list); - -struct tevent_req *ctdb_event_script_enable_send( - TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient, - const char *script_name); - -bool ctdb_event_script_enable_recv(struct tevent_req *req, int *perr, - int32_t *result); - -struct tevent_req *ctdb_event_script_disable_send( - TALLOC_CTX *mem_ctx, - struct tevent_context *ev, - struct ctdb_event_context *eclient, - const char *script_name); - -bool ctdb_event_script_disable_recv(struct tevent_req *req, int *perr, - int32_t *result); - #endif /* __CTDB_CLIENT_H__ */ diff --git a/ctdb/client/client_event.c b/ctdb/client/client_event.c index 63972595b91..533ed39d240 100644 --- a/ctdb/client/client_event.c +++ b/ctdb/client/client_event.c @@ -33,7 +33,7 @@ #include "protocol/protocol_api.h" -#include "client/client.h" +#include "client/client_event.h" struct ctdb_event_context { struct reqid_context *idr; diff --git a/ctdb/client/client_event.h b/ctdb/client/client_event.h new file mode 100644 index 00000000000..1897aa9199a --- /dev/null +++ b/ctdb/client/client_event.h @@ -0,0 +1,92 @@ +/* + CTDB client code - event daemon + + Copyright (C) Amitay Isaacs 2017 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, see . +*/ + +#ifndef __CTDB_CLIENT_EVENT_H__ +#define __CTDB_CLIENT_EVENT_H__ + +#include "client/client.h" + +/* from client/client_event.c */ + +struct ctdb_event_context; + +int ctdb_event_init(TALLOC_CTX *mem_ctx, struct tevent_context *ev, + const char *sockpath, struct ctdb_event_context **out); + +void ctdb_event_set_disconnect_callback(struct ctdb_event_context *eclient, + ctdb_client_callback_func_t callback, + void *private_data); + +struct tevent_req *ctdb_event_msg_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient, + struct ctdb_event_request *request); + +bool ctdb_event_msg_recv(struct tevent_req *req, int *perr, + TALLOC_CTX *mem_ctx, + struct ctdb_event_reply **reply); + +struct tevent_req *ctdb_event_run_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient, + enum ctdb_event event, + uint32_t timeout, const char *arg_str); + +bool ctdb_event_run_recv(struct tevent_req *req, int *perr, int32_t *result); + +struct tevent_req *ctdb_event_status_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient, + enum ctdb_event event, + enum ctdb_event_status_state state); + +bool ctdb_event_status_recv(struct tevent_req *req, int *perr, + int32_t *result, int *event_result, + TALLOC_CTX *mem_ctx, + struct ctdb_script_list **script_list); + +struct tevent_req *ctdb_event_script_list_send( + TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient); + +bool ctdb_event_script_list_recv(struct tevent_req *req, int *perr, + int32_t *result, TALLOC_CTX *mem_ctx, + struct ctdb_script_list **script_list); + +struct tevent_req *ctdb_event_script_enable_send( + TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient, + const char *script_name); + +bool ctdb_event_script_enable_recv(struct tevent_req *req, int *perr, + int32_t *result); + +struct tevent_req *ctdb_event_script_disable_send( + TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct ctdb_event_context *eclient, + const char *script_name); + +bool ctdb_event_script_disable_recv(struct tevent_req *req, int *perr, + int32_t *result); + + +#endif /* __CTDB_CLIENT_EVENT_H__ */ diff --git a/ctdb/tools/ctdb_event.c b/ctdb/tools/ctdb_event.c index 9b348a6846d..07bc73bc9e7 100644 --- a/ctdb/tools/ctdb_event.c +++ b/ctdb/tools/ctdb_event.c @@ -27,7 +27,7 @@ #include "lib/util/debug.h" #include "protocol/protocol_api.h" -#include "client/client.h" +#include "client/client_event.h" #include "common/logging.h" struct tool_context { -- 2.47.2