selftests/net: fix a char signedness issue
authorWillem de Bruijn <willemb@google.com>
Fri, 24 Nov 2023 17:15:20 +0000 (12:15 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Dec 2023 07:52:22 +0000 (08:52 +0100)
[ Upstream commit 7b29828c5af6841bdeb9fafa32fdfeff7ab9c407 ]

Signedness of char is signed on x86_64, but unsigned on arm64.

Fix the warning building cmsg_sender.c on signed platforms or
forced with -fsigned-char:

    msg_sender.c:455:12:
    error: implicit conversion from 'int' to 'char'
    changes value from 128 to -128
    [-Werror,-Wconstant-conversion]
        buf[0] = ICMPV6_ECHO_REQUEST;

constant ICMPV6_ECHO_REQUEST is 128.

Link: https://lwn.net/Articles/911914
Fixes: de17e305a810 ("selftests: net: cmsg_sender: support icmp and raw sockets")
Signed-off-by: Willem de Bruijn <willemb@google.com>
Link: https://lore.kernel.org/r/20231124171645.1011043-3-willemdebruijn.kernel@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/testing/selftests/net/cmsg_sender.c

index 24b21b1..6ff3e73 100644 (file)
@@ -416,9 +416,9 @@ int main(int argc, char *argv[])
 {
        struct addrinfo hints, *ai;
        struct iovec iov[1];
+       unsigned char *buf;
        struct msghdr msg;
        char cbuf[1024];
-       char *buf;
        int err;
        int fd;