]> git.ipfire.org Git - thirdparty/chrony.git/commitdiff
util: add function to get sockaddr family name
authorMiroslav Lichvar <mlichvar@redhat.com>
Tue, 28 Jul 2015 11:03:23 +0000 (13:03 +0200)
committerMiroslav Lichvar <mlichvar@redhat.com>
Tue, 28 Jul 2015 11:11:00 +0000 (13:11 +0200)
cmdmon.c
ntp_io.c
util.c
util.h

index 912bc3d5ceda69ffc8b9c108b6cd0b7fe0774ed3..c55097a5aefc61dd4054d053967c794db3e109df 100644 (file)
--- a/cmdmon.c
+++ b/cmdmon.c
@@ -191,7 +191,7 @@ prepare_socket(int family, int port_number)
   sock_fd = socket(family, SOCK_DGRAM, 0);
   if (sock_fd < 0) {
     LOG(LOGS_ERR, LOGF_CmdMon, "Could not open %s command socket : %s",
-        family == AF_INET ? "IPv4" : "IPv6", strerror(errno));
+        UTI_SockaddrFamilyToString(family), strerror(errno));
     return -1;
   }
 
@@ -258,7 +258,7 @@ prepare_socket(int family, int port_number)
 
   if (bind(sock_fd, &my_addr.u, my_addr_len) < 0) {
     LOG(LOGS_ERR, LOGF_CmdMon, "Could not bind %s command socket : %s",
-        family == AF_INET ? "IPv4" : "IPv6", strerror(errno));
+        UTI_SockaddrFamilyToString(family), strerror(errno));
     close(sock_fd);
     return -1;
   }
index 571292a8cd150fc1d88d90442cfa814bfa1cf3f0..68d677d4dd2010161a04786510d7a3237e0de4ea 100644 (file)
--- a/ntp_io.c
+++ b/ntp_io.c
@@ -99,10 +99,10 @@ prepare_socket(int family, int port_number, int client_only)
   if (sock_fd < 0) {
     if (!client_only) {
       LOG(LOGS_ERR, LOGF_NtpIO, "Could not open %s NTP socket : %s",
-          family == AF_INET ? "IPv4" : "IPv6", strerror(errno));
+          UTI_SockaddrFamilyToString(family), strerror(errno));
     } else {
       DEBUG_LOG(LOGF_NtpIO, "Could not open %s NTP socket : %s",
-                family == AF_INET ? "IPv4" : "IPv6", strerror(errno));
+                UTI_SockaddrFamilyToString(family), strerror(errno));
     }
     return INVALID_SOCK_FD;
   }
@@ -221,7 +221,7 @@ prepare_socket(int family, int port_number, int client_only)
   /* Bind the socket if a port or address was specified */
   if (my_addr_len > 0 && bind(sock_fd, &my_addr.u, my_addr_len) < 0) {
     LOG(LOGS_ERR, LOGF_NtpIO, "Could not bind %s NTP socket : %s",
-        family == AF_INET ? "IPv4" : "IPv6", strerror(errno));
+        UTI_SockaddrFamilyToString(family), strerror(errno));
     close(sock_fd);
     return INVALID_SOCK_FD;
   }
diff --git a/util.c b/util.c
index e3ffbf9cbd25715a11c1d1090ff994d6341727bc..7bee7f064f24b133fe2e68576874954e2feedb33 100644 (file)
--- a/util.c
+++ b/util.c
@@ -487,6 +487,27 @@ UTI_IPAndPortToSockaddr(IPAddr *ip, unsigned short port, struct sockaddr *sa)
 
 /* ================================================== */
 
+const char *
+UTI_SockaddrFamilyToString(int family)
+{
+  switch (family) {
+    case AF_INET:
+      return "IPv4";
+#ifdef AF_INET6
+    case AF_INET6:
+      return "IPv6";
+#endif
+    case AF_UNIX:
+      return "Unix";
+    case AF_UNSPEC:
+      return "UNSPEC";
+    default:
+      return "?";
+  }
+}
+
+/* ================================================== */
+
 char *
 UTI_TimeToLogForm(time_t t)
 {
diff --git a/util.h b/util.h
index 68afb78bf16cfbe3e2d735c2f6c09839bf390eeb..11ffb16c12e2ab0ca74d9cb4f8667ee87ec5bc29 100644 (file)
--- a/util.h
+++ b/util.h
@@ -88,6 +88,7 @@ extern int UTI_CompareIPs(IPAddr *a, IPAddr *b, IPAddr *mask);
 
 extern void UTI_SockaddrToIPAndPort(struct sockaddr *sa, IPAddr *ip, unsigned short *port);
 extern int UTI_IPAndPortToSockaddr(IPAddr *ip, unsigned short port, struct sockaddr *sa);
+extern const char *UTI_SockaddrFamilyToString(int family);
 
 extern char *UTI_TimeToLogForm(time_t t);