On Wed, May 01, 2019 at 03:50:52PM +0100, Daniel P. Berrangé wrote: > In file included from /usr/include/string.h:494, > from include/qemu/osdep.h:101, > from util/qemu-sockets.c:18: > 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: warning: ‘__builtin_strncpy’ > specified bound 108 equals destination size [-Wstringop-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: > /usr/include/bits/string_fortified.h:106:10: warning: ‘__builtin_strncpy’ > specified bound 108 equals destination size [-Wstringop-truncation] > 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos > (__dest)); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > We are already validating the UNIX socket path length earlier in > the functions. If we save this string length when we first check > it, then we can simply use memcpy instead of strcpy later, avoiding > the gcc truncation warnings. > > Signed-off-by: Daniel P. Berrangé <berra...@redhat.com> > --- > util/qemu-sockets.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-)
Reviewed-by: Stefano Garzarella <sgarz...@redhat.com>