diff options
author | Stefan Metzmacher <metze@samba.org> | 2009-12-16 15:50:06 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2010-01-20 11:10:58 +0100 |
commit | b9f6afe4b00b34e7195ac741e0a1c373aa134cf8 (patch) | |
tree | f6abb4361ec8fb43e5b3a79b338af61457588984 /ctdb | |
parent | 15616d3271dbd182a7cdb46029440650873c5349 (diff) | |
download | samba-b9f6afe4b00b34e7195ac741e0a1c373aa134cf8.tar.gz samba-b9f6afe4b00b34e7195ac741e0a1c373aa134cf8.tar.xz samba-b9f6afe4b00b34e7195ac741e0a1c373aa134cf8.zip |
client: add CTDB_PUBLIC_IP_FLAGS_ONLY_AVAILABLE ctdb_ctrl_get_public_ips_flags()
metze
(This used to be ctdb commit 6bd780510058e5589f2f7c3722d37acbba4935ab)
Diffstat (limited to 'ctdb')
-rw-r--r-- | ctdb/client/ctdb_client.c | 20 | ||||
-rw-r--r-- | ctdb/include/ctdb_private.h | 12 |
2 files changed, 26 insertions, 6 deletions
diff --git a/ctdb/client/ctdb_client.c b/ctdb/client/ctdb_client.c index 4aad40060a..706d25fde1 100644 --- a/ctdb/client/ctdb_client.c +++ b/ctdb/client/ctdb_client.c @@ -2318,16 +2318,18 @@ int ctdb_ctrl_list_tunables(struct ctdb_context *ctdb, } -int ctdb_ctrl_get_public_ips(struct ctdb_context *ctdb, - struct timeval timeout, uint32_t destnode, - TALLOC_CTX *mem_ctx, struct ctdb_all_public_ips **ips) +int ctdb_ctrl_get_public_ips_flags(struct ctdb_context *ctdb, + struct timeval timeout, uint32_t destnode, + TALLOC_CTX *mem_ctx, + uint32_t flags, + struct ctdb_all_public_ips **ips) { int ret; TDB_DATA outdata; int32_t res; ret = ctdb_control(ctdb, destnode, 0, - CTDB_CONTROL_GET_PUBLIC_IPS, 0, tdb_null, + CTDB_CONTROL_GET_PUBLIC_IPS, flags, tdb_null, mem_ctx, &outdata, &res, &timeout, NULL); if (ret == 0 && res == -1) { DEBUG(DEBUG_ERR,(__location__ " ctdb_control to get public ips failed, falling back to ipv4-only version\n")); @@ -2344,6 +2346,16 @@ int ctdb_ctrl_get_public_ips(struct ctdb_context *ctdb, return 0; } +int ctdb_ctrl_get_public_ips(struct ctdb_context *ctdb, + struct timeval timeout, uint32_t destnode, + TALLOC_CTX *mem_ctx, + struct ctdb_all_public_ips **ips) +{ + return ctdb_ctrl_get_public_ips_flags(ctdb, timeout, + destnode, mem_ctx, + 0, ips); +} + int ctdb_ctrl_get_public_ipsv4(struct ctdb_context *ctdb, struct timeval timeout, uint32_t destnode, TALLOC_CTX *mem_ctx, struct ctdb_all_public_ips **ips) diff --git a/ctdb/include/ctdb_private.h b/ctdb/include/ctdb_private.h index f71be4dfa0..217821313a 100644 --- a/ctdb/include/ctdb_private.h +++ b/ctdb/include/ctdb_private.h @@ -1305,8 +1305,16 @@ struct ctdb_all_public_ips { int32_t ctdb_control_get_public_ipsv4(struct ctdb_context *ctdb, struct ctdb_req_control *c, TDB_DATA *outdata); int32_t ctdb_control_get_public_ips(struct ctdb_context *ctdb, struct ctdb_req_control *c, TDB_DATA *outdata); int ctdb_ctrl_get_public_ips(struct ctdb_context *ctdb, - struct timeval timeout, uint32_t destnode, - TALLOC_CTX *mem_ctx, struct ctdb_all_public_ips **ips); + struct timeval timeout, + uint32_t destnode, + TALLOC_CTX *mem_ctx, + struct ctdb_all_public_ips **ips); +#define CTDB_PUBLIC_IP_FLAGS_ONLY_AVAILABLE 0x00010000 +int ctdb_ctrl_get_public_ips_flags(struct ctdb_context *ctdb, + struct timeval timeout, uint32_t destnode, + TALLOC_CTX *mem_ctx, + uint32_t flags, + struct ctdb_all_public_ips **ips); int ctdb_ctrl_get_public_ipsv4(struct ctdb_context *ctdb, struct timeval timeout, uint32_t destnode, TALLOC_CTX *mem_ctx, struct ctdb_all_public_ips **ips); |