ip6_checksum.h (75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37) | ip6_checksum.h (76eeb12b71a4aa5654694765c8c1bde9a1ce8bd8) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 * INET An implementation of the TCP/IP protocol suite for the LINUX 4 * operating system. INET is implemented using the BSD Socket 5 * interface as the means of communication with the user level. 6 * 7 * Checksumming functions for IPv6 8 * --- 62 unchanged lines hidden (view full) --- 71 skb->csum_offset = offsetof(struct tcphdr, check); 72 } else { 73 th->check = tcp_v6_check(skb->len, saddr, daddr, 74 csum_partial(th, th->doff << 2, 75 skb->csum)); 76 } 77} 78 | 1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 * INET An implementation of the TCP/IP protocol suite for the LINUX 4 * operating system. INET is implemented using the BSD Socket 5 * interface as the means of communication with the user level. 6 * 7 * Checksumming functions for IPv6 8 * --- 62 unchanged lines hidden (view full) --- 71 skb->csum_offset = offsetof(struct tcphdr, check); 72 } else { 73 th->check = tcp_v6_check(skb->len, saddr, daddr, 74 csum_partial(th, th->doff << 2, 75 skb->csum)); 76 } 77} 78 |
79static inline void tcp_v6_gso_csum_prep(struct sk_buff *skb) 80{ 81 struct ipv6hdr *ipv6h = ipv6_hdr(skb); 82 struct tcphdr *th = tcp_hdr(skb); 83 84 ipv6h->payload_len = 0; 85 th->check = ~tcp_v6_check(0, &ipv6h->saddr, &ipv6h->daddr, 0); 86} 87 |
|
79#if IS_ENABLED(CONFIG_IPV6) 80static inline void tcp_v6_send_check(struct sock *sk, struct sk_buff *skb) 81{ 82 struct ipv6_pinfo *np = inet6_sk(sk); 83 84 __tcp_v6_send_check(skb, &np->saddr, &sk->sk_v6_daddr); 85} 86#endif --- 15 unchanged lines hidden --- | 88#if IS_ENABLED(CONFIG_IPV6) 89static inline void tcp_v6_send_check(struct sock *sk, struct sk_buff *skb) 90{ 91 struct ipv6_pinfo *np = inet6_sk(sk); 92 93 __tcp_v6_send_check(skb, &np->saddr, &sk->sk_v6_daddr); 94} 95#endif --- 15 unchanged lines hidden --- |