From ee930fffee469d076998274a2ca55e13dc1efb67 Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Fri, 10 May 2024 08:50:54 +0000 Subject: [PATCH] enable tun/tap/iptables --- kernel/include/net/ip6_checksum.h | 16 ++++++---------- 1 files changed, 6 insertions(+), 10 deletions(-) diff --git a/kernel/include/net/ip6_checksum.h b/kernel/include/net/ip6_checksum.h index cca8405..b3f4eaa 100644 --- a/kernel/include/net/ip6_checksum.h +++ b/kernel/include/net/ip6_checksum.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * INET An implementation of the TCP/IP protocol suite for the LINUX * operating system. INET is implemented using the BSD Socket @@ -9,11 +10,6 @@ * Arnt Gulbrandsen, <agulbra@nvg.unit.no> * Borrows very liberally from tcp.c and ip.c, see those * files for more names. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version - * 2 of the License, or (at your option) any later version. */ /* @@ -80,14 +76,14 @@ } } -#if IS_ENABLED(CONFIG_IPV6) -static inline void tcp_v6_send_check(struct sock *sk, struct sk_buff *skb) +static inline void tcp_v6_gso_csum_prep(struct sk_buff *skb) { - struct ipv6_pinfo *np = inet6_sk(sk); + struct ipv6hdr *ipv6h = ipv6_hdr(skb); + struct tcphdr *th = tcp_hdr(skb); - __tcp_v6_send_check(skb, &np->saddr, &sk->sk_v6_daddr); + ipv6h->payload_len = 0; + th->check = ~tcp_v6_check(0, &ipv6h->saddr, &ipv6h->daddr, 0); } -#endif static inline __sum16 udp_v6_check(int len, const struct in6_addr *saddr, -- Gitblit v1.6.2