From d165d36a0c88fe8665da012f35cb60ced991568b Mon Sep 17 00:00:00 2001 From: Stefano Brivio Date: Wed, 30 Oct 2024 21:31:05 +0100 Subject: [PATCH] tcp: Fix build against musl, __sum16 comes from linux/types.h Use a plain uint16_t instead and avoid including one extra header: the 'bitwise' attribute of __sum16 is just used by sparse(1). Reported-by: omni Fixes: 3d484aa37090 ("tcp: Update TCP checksum using an iovec array") Signed-off-by: Stefano Brivio Reviewed-by: David Gibson --- tcp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tcp.c b/tcp.c index 4e0a17e..56ceba6 100644 --- a/tcp.c +++ b/tcp.c @@ -766,7 +766,7 @@ static void tcp_update_check_tcp4(const struct iphdr *iph, struct in_addr saddr = { .s_addr = iph->saddr }; struct in_addr daddr = { .s_addr = iph->daddr }; size_t check_ofs; - __sum16 *check; + uint16_t *check; int check_idx; uint32_t sum; char *ptr; @@ -797,7 +797,7 @@ static void tcp_update_check_tcp4(const struct iphdr *iph, return; } - check = (__sum16 *)ptr; + check = (uint16_t *)ptr; *check = 0; *check = csum_iov(iov, iov_cnt, l4offset, sum); @@ -816,7 +816,7 @@ static void tcp_update_check_tcp6(const struct ipv6hdr *ip6h, { uint16_t l4len = ntohs(ip6h->payload_len); size_t check_ofs; - __sum16 *check; + uint16_t *check; int check_idx; uint32_t sum; char *ptr; @@ -848,7 +848,7 @@ static void tcp_update_check_tcp6(const struct ipv6hdr *ip6h, return; } - check = (__sum16 *)ptr; + check = (uint16_t *)ptr; *check = 0; *check = csum_iov(iov, iov_cnt, l4offset, sum);