diff --git a/socket.c b/socket.c index 860fa0f..8a5d046 100644 --- a/socket.c +++ b/socket.c @@ -505,6 +505,8 @@ bind_unix_address(int sock_fd, const char *addr, int flags) { union sockaddr_all saddr; + memset(&saddr, 0, sizeof (saddr)); + if (snprintf(saddr.un.sun_path, sizeof (saddr.un.sun_path), "%s", addr) >= sizeof (saddr.un.sun_path)) { DEBUG_LOG("Unix socket path %s too long", addr); @@ -537,6 +539,8 @@ connect_unix_address(int sock_fd, const char *addr) { union sockaddr_all saddr; + memset(&saddr, 0, sizeof (saddr)); + if (snprintf(saddr.un.sun_path, sizeof (saddr.un.sun_path), "%s", addr) >= sizeof (saddr.un.sun_path)) { DEBUG_LOG("Unix socket path %s too long", addr);