From 7a3b1414cd8ba5ccf4485b7c1097437b375e34f8 Mon Sep 17 00:00:00 2001 From: Miroslav Lichvar Date: Tue, 28 Jul 2015 13:03:23 +0200 Subject: [PATCH] util: add function to get sockaddr family name --- cmdmon.c | 4 ++-- ntp_io.c | 6 +++--- util.c | 21 +++++++++++++++++++++ util.h | 1 + 4 files changed, 27 insertions(+), 5 deletions(-) diff --git a/cmdmon.c b/cmdmon.c index 912bc3d..c55097a 100644 --- 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; } diff --git a/ntp_io.c b/ntp_io.c index 571292a..68d677d 100644 --- 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 e3ffbf9..7bee7f0 100644 --- 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 68afb78..11ffb16 100644 --- 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);