summaryrefslogtreecommitdiff
path: root/ctdb/protocol/protocol_util.c
diff options
context:
space:
mode:
authorAmitay Isaacs <amitay@gmail.com>2015-11-02 16:24:15 +1100
committerMartin Schwenke <martins@samba.org>2015-11-25 10:16:20 +0100
commit3d84399f5ec12954db9638627fd1d747cc4acb71 (patch)
tree1b42b7014edca3c2f8a24cad0dbc9caa3f0d1da9 /ctdb/protocol/protocol_util.c
parentaf13e56271d4352a28352a89b651d569afda2314 (diff)
downloadsamba-3d84399f5ec12954db9638627fd1d747cc4acb71.tar.gz
ctdb-protocol: Add utility function ctdb_sock_addr_to_string
This is a duplicate function to ctdb_addr_to_str, but ctdb-util cannot be linked with the code using new API mainly because it code in ctdb-util requires struct ctdb_context. Signed-off-by: Amitay Isaacs <amitay@gmail.com> Reviewed-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'ctdb/protocol/protocol_util.c')
-rw-r--r--ctdb/protocol/protocol_util.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/ctdb/protocol/protocol_util.c b/ctdb/protocol/protocol_util.c
index 1082b0b2e8f..823849fcb63 100644
--- a/ctdb/protocol/protocol_util.c
+++ b/ctdb/protocol/protocol_util.c
@@ -112,3 +112,31 @@ enum ctdb_event ctdb_event_from_string(const char *event_str)
return CTDB_EVENT_MAX;
}
+
+const char *ctdb_sock_addr_to_string(TALLOC_CTX *mem_ctx, ctdb_sock_addr *addr)
+{
+ char *cip;
+
+ cip = talloc_size(mem_ctx, 128);
+ if (cip == NULL) {
+ return "Memory Error";
+ }
+
+ switch (addr->sa.sa_family) {
+ case AF_INET:
+ inet_ntop(addr->ip.sin_family, &addr->ip.sin_addr,
+ cip, 128);
+ break;
+
+ case AF_INET6:
+ inet_ntop(addr->ip6.sin6_family, &addr->ip6.sin6_addr,
+ cip, 128);
+ break;
+
+ default:
+ sprintf(cip, "Unknown family %u", addr->sa.sa_family);
+ break;
+ }
+
+ return cip;
+}