if (skb->ip_summed != CHECKSUM_UNNECESSARY)
skb->csum = ~csum_unfold(csum_ipv6_magic(&skb->nh.ipv6h->saddr,
&skb->nh.ipv6h->daddr,
- ulen, IPPROTO_UDP,
+ skb->len, IPPROTO_UDP,
0));
return (UDP_SKB_CB(skb)->partial_cov = 0);
uh->check = csum_ipv6_magic(&fl->fl6_src, &fl->fl6_dst,
up->len, fl->proto, csum );
if (uh->check == 0)
- uh->check = -1;
+ uh->check = CSUM_MANGLED_0;
err = ip6_push_pending_frames(sk);
out: