cksum_add
cksum_add(uint16_t sum, uint16_t a)
return (~cksum_add(cksum_add(~oldsum, ~old), new));
tcp->th_sum = cksum_add(tcp->th_sum,
udp->uh_sum = cksum_add(udp->uh_sum,
ICMP6(icmp)->icmp6_cksum = cksum_add(
*csum = cksum_add(*csum, ~nat64_cksum_convert(&ip6, ip));
*csum = cksum_add(*csum, ~nat64_cksum_convert(&ip6, ip));
*csum = cksum_add(*csum, nat64_cksum_convert(ip6, &ip));
*csum = cksum_add(*csum, nat64_cksum_convert(ip6, &ip));
*csum = cksum_add(*csum, in6_cksum_pseudo(ip6, plen,
adj = cksum_add(adj, cfg->adjustment);
adj = cksum_add(adj, ~cfg->adjustment);
i = cksum_add(i, *p);
e = cksum_add(e, *p);
cfg->adjustment = cksum_add(~e, i);
ip.ip_sum = ~cksum_add(~ip.ip_sum, htons(ip_sum));
sum = ~cksum_add(~sum, cksum_add(~t, *w));
sum = ~cksum_add(~sum, cksum_add(~t, *w));
ip_sum = cksum_add(ip_sum, ~oaddr >> 16);
ip_sum = cksum_add(ip_sum, ~oaddr & 0xffff);
ip_sum = cksum_add(ip_sum, naddr >> 16);
ip_sum = cksum_add(ip_sum, naddr & 0xffff);
udp_sum = cksum_add(udp_sum, ~oport);
udp_sum = cksum_add(udp_sum, nport);
udp.uh_sum = ~cksum_add(~udp.uh_sum, htons(udp_sum));
ip.ip_sum = ~cksum_add(~ip.ip_sum, htons(ip_sum));
udp.uh_sum = ~cksum_add(~udp.uh_sum, htons(ip_sum));
udp_sum = cksum_add(~oaddr, naddr);
udp_sum = cksum_add(udp_sum,
cksum_add(~oport, nport));
udp_sum = cksum_add(udp_sum,
cksum_add(~oaddr, naddr));
udp_sum = cksum_add(udp_sum,
cksum_add(~oport, nport));
udp.uh_sum = ~cksum_add(~udp.uh_sum, udp_sum);