diff options
author | Ronnie Sahlberg <ronniesahlberg@gmail.com> | 2011-08-23 15:00:27 +1000 |
---|---|---|
committer | Ronnie Sahlberg <ronniesahlberg@gmail.com> | 2011-08-23 15:00:27 +1000 |
commit | 5e72ee512700cb140d94e0fec8ff7fb688e16934 (patch) | |
tree | d95a8719c5064eb882cc8b249803a1f9b808e62a /ctdb/libctdb/control.c | |
parent | 9729d3e339d33ef85025aab2c09c180430998f35 (diff) | |
download | samba-5e72ee512700cb140d94e0fec8ff7fb688e16934.tar.gz samba-5e72ee512700cb140d94e0fec8ff7fb688e16934.tar.xz samba-5e72ee512700cb140d94e0fec8ff7fb688e16934.zip |
LibCTDB : add support for getrecmode
(This used to be ctdb commit 0893fa0f3257f50d54896ffa78ec12ee11e8c6d2)
Diffstat (limited to 'ctdb/libctdb/control.c')
-rw-r--r-- | ctdb/libctdb/control.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/ctdb/libctdb/control.c b/ctdb/libctdb/control.c index e18a44ee22..48add207c7 100644 --- a/ctdb/libctdb/control.c +++ b/ctdb/libctdb/control.c @@ -23,6 +23,7 @@ /* Remove type-safety macros. */ #undef ctdb_getrecmaster_send +#undef ctdb_getrecmode_send #undef ctdb_getpnn_send #undef ctdb_getnodemap_send #undef ctdb_getpublicips_send @@ -54,6 +55,33 @@ struct ctdb_request *ctdb_getrecmaster_send(struct ctdb_connection *ctdb, callback, private_data); } +bool ctdb_getrecmode_recv(struct ctdb_connection *ctdb, + struct ctdb_request *req, uint32_t *recmode) +{ + struct ctdb_reply_control *reply; + + reply = unpack_reply_control(req, CTDB_CONTROL_GET_RECMODE); + if (!reply) { + return false; + } + if (reply->status == -1) { + DEBUG(ctdb, LOG_ERR, "ctdb_getrecmode_recv: status -1"); + return false; + } + *recmode = reply->status; + return true; +} + +struct ctdb_request *ctdb_getrecmode_send(struct ctdb_connection *ctdb, + uint32_t destnode, + ctdb_callback_t callback, + void *private_data) +{ + return new_ctdb_control_request(ctdb, CTDB_CONTROL_GET_RECMODE, + destnode, NULL, 0, + callback, private_data); +} + bool ctdb_getpnn_recv(struct ctdb_connection *ctdb, struct ctdb_request *req, uint32_t *pnn) { |