From: Alistair Francis Date: Sat, 4 May 2019 07:57:32 -0600 Subject: util/qemu-sockets: Fix GCC 9 build warnings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix this warning when building with GCC9 on Fedora 30: In function ‘strncpy’, inlined from ‘unix_connect_saddr.isra.0’ at util/qemu-sockets.c:925:5: /usr/include/bits/string_fortified.h:106:10: error: ‘__builtin_strncpy’ specified bound 108 equals destination size [-Werror=stringop-truncation] 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘strncpy’, inlined from ‘unix_listen_saddr.isra.0’ at util/qemu-sockets.c:880:5: Signed-off-by: Alistair Francis Signed-off-by: Bruce Rogers --- util/qemu-sockets.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util/qemu-sockets.c b/util/qemu-sockets.c index 9705051690..8c3322958f 100644 --- a/util/qemu-sockets.c +++ b/util/qemu-sockets.c @@ -829,7 +829,7 @@ static int unix_listen_saddr(UnixSocketAddress *saddr, struct sockaddr_un un; int sock, fd; char *pathbuf = NULL; - const char *path; + const char *path QEMU_NONSTRING; sock = qemu_socket(PF_UNIX, SOCK_STREAM, 0); if (sock < 0) { @@ -922,7 +922,7 @@ static int unix_connect_saddr(UnixSocketAddress *saddr, Error **errp) memset(&un, 0, sizeof(un)); un.sun_family = AF_UNIX; - strncpy(un.sun_path, saddr->path, sizeof(un.sun_path)); + memcpy(un.sun_path, saddr->path, MIN(strlen(saddr->path), sizeof(un.sun_path))); /* connect to peer */ do {