Displaying 1 result from an estimated 1 matches for "ipproto_fragment".
2013 Nov 28
4
[PATCH net] xen-netback: fix fragment detection in checksum setup
...truct xenvif *vif, struct sk_buff *skb,
bool fragment;
bool done;
+ fragment = false;
done = false;
off = sizeof(struct ipv6hdr);
@@ -1275,9 +1288,21 @@ static int checksum_setup_ipv6(struct xenvif *vif, struct sk_buff *skb,
off += (hp->hdrlen+2)<<2;
break;
}
- case IPPROTO_FRAGMENT:
- fragment = true;
- /* fall through */
+ case IPPROTO_FRAGMENT: {
+ struct frag_hdr *hp = (void *)(skb->data + off);
+
+ header_size = skb->network_header +
+ off +
+ sizeof(struct frag_hdr);
+ maybe_pull_tail(skb, header_size);
+
+ if (ntohs(hp->frag_off) & 0xFFF9...