From 1b0cd3c280fe3c4d4bd9f75e801780fb332a7afe Mon Sep 17 00:00:00 2001 From: Amitay Isaacs Date: Wed, 14 Jun 2017 16:37:34 +1000 Subject: [PATCH] ctdb-client: Add sync api for control DB_OPEN_FLAGS Signed-off-by: Amitay Isaacs Reviewed-by: Martin Schwenke --- ctdb/client/client_control_sync.c | 29 +++++++++++++++++++++++++++++ ctdb/client/client_sync.h | 5 +++++ 2 files changed, 34 insertions(+) diff --git a/ctdb/client/client_control_sync.c b/ctdb/client/client_control_sync.c index 3b44c2ffe51..7e245b63333 100644 --- a/ctdb/client/client_control_sync.c +++ b/ctdb/client/client_control_sync.c @@ -2701,3 +2701,32 @@ int ctdb_ctrl_db_push_confirm(TALLOC_CTX *mem_ctx, struct tevent_context *ev, return 0; } + +int ctdb_ctrl_db_open_flags(TALLOC_CTX *mem_ctx, struct tevent_context *ev, + struct ctdb_client_context *client, + int destnode, struct timeval timeout, + uint32_t db_id, int *tdb_flags) +{ + struct ctdb_req_control request; + struct ctdb_reply_control *reply; + int ret; + + ctdb_req_control_db_open_flags(&request, db_id); + ret = ctdb_client_control(mem_ctx, ev, client, destnode, timeout, + &request, &reply); + if (ret != 0) { + DEBUG(DEBUG_ERR, + ("Control DB_OPEN_FLAGS failed to node %u, ret=%d\n", + destnode, ret)); + return ret; + } + + ret = ctdb_reply_control_db_open_flags(reply, tdb_flags); + if (ret != 0) { + DEBUG(DEBUG_ERR, + ("Control DB_OPEN_FLAGS failed, ret=%d\n", ret)); + return ret; + } + + return 0; +} diff --git a/ctdb/client/client_sync.h b/ctdb/client/client_sync.h index 8c94f12ee0e..18387eee47d 100644 --- a/ctdb/client/client_sync.h +++ b/ctdb/client/client_sync.h @@ -485,6 +485,11 @@ int ctdb_ctrl_db_push_confirm(TALLOC_CTX *mem_ctx, struct tevent_context *ev, int destnode, struct timeval timeout, uint32_t db_id, uint32_t *num_records); +int ctdb_ctrl_db_open_flags(TALLOC_CTX *mem_ctx, struct tevent_context *ev, + struct ctdb_client_context *client, + int destnode, struct timeval timeout, + uint32_t db_id, int *tdb_flags); + /* from client/client_message_sync.c */ int ctdb_message_recd_update_ip(TALLOC_CTX *mem_ctx, struct tevent_context *ev, -- 2.11.4.GIT