]> git.ipfire.org Git - thirdparty/chrony.git/commitdiff
util: add UTI_IPSockAddrToString()
authorMiroslav Lichvar <mlichvar@redhat.com>
Thu, 18 Jul 2019 06:12:33 +0000 (08:12 +0200)
committerMiroslav Lichvar <mlichvar@redhat.com>
Thu, 18 Jul 2019 11:37:52 +0000 (13:37 +0200)
This function prints an IPSockAddr. IPv6 addresses are printed in
brackets to separate the address from the port.

util.c
util.h

diff --git a/util.c b/util.c
index e7e3442ce63f0a72ce9d91a2e25412ed81ea800b..7108c17267f4eb451db26f25d940ef76d7c574ed 100644 (file)
--- a/util.c
+++ b/util.c
@@ -604,6 +604,21 @@ UTI_SockaddrFamilyToString(int family)
 
 /* ================================================== */
 
+char *
+UTI_IPSockAddrToString(IPSockAddr *sa)
+{
+  char *result;
+
+  result = NEXT_BUFFER;
+  snprintf(result, BUFFER_LENGTH,
+           sa->ip_addr.family != IPADDR_INET6 ? "%s:%hu" : "[%s]:%hu",
+           UTI_IPToString(&sa->ip_addr), sa->port);
+
+  return result;
+}
+
+/* ================================================== */
+
 char *
 UTI_TimeToLogForm(time_t t)
 {
diff --git a/util.h b/util.h
index e3d6767da2d7c8482291bf859966e58efce9daee..8a0e37c1c272fbb7ea363d9540203697157eef6d 100644 (file)
--- a/util.h
+++ b/util.h
@@ -115,6 +115,8 @@ extern int UTI_IPAndPortToSockaddr(IPAddr *ip, unsigned short port, struct socka
 extern char *UTI_SockaddrToString(struct sockaddr *sa);
 extern const char *UTI_SockaddrFamilyToString(int family);
 
+extern char *UTI_IPSockAddrToString(IPSockAddr *sa);
+
 extern char *UTI_TimeToLogForm(time_t t);
 
 /* Adjust time following a frequency/offset change */