Lines Matching refs:frag

19  *	Imran Patel	:	frag id should be in NBO
713 iter->frag = skb_shinfo(skb)->frag_list;
744 struct sk_buff *frag = iter->frag;
748 frag->ip_summed = CHECKSUM_NONE;
749 skb_reset_transport_header(frag);
750 fh = __skb_push(frag, sizeof(struct frag_hdr));
751 __skb_push(frag, hlen);
752 skb_reset_network_header(frag);
753 memcpy(skb_network_header(frag), iter->tmp_hdr, hlen);
758 if (frag->next)
761 ipv6_hdr(frag)->payload_len = htons(frag->len - sizeof(struct ipv6hdr));
762 ip6_copy_metadata(frag, skb);
790 struct sk_buff *frag;
804 frag = alloc_skb(len + state->hlen + sizeof(struct frag_hdr) +
806 if (!frag)
813 ip6_copy_metadata(frag, skb);
814 skb_reserve(frag, state->hroom);
815 skb_put(frag, len + state->hlen + sizeof(struct frag_hdr));
816 skb_reset_network_header(frag);
817 fh = (struct frag_hdr *)(skb_network_header(frag) + state->hlen);
818 frag->transport_header = (frag->network_header + state->hlen +
826 skb_set_owner_w(frag, skb->sk);
831 skb_copy_from_linear_data(skb, skb_network_header(frag), state->hlen);
833 fragnexthdr_offset = skb_network_header(frag);
847 BUG_ON(skb_copy_bits(skb, state->ptr, skb_transport_header(frag),
854 ipv6_hdr(frag)->payload_len = htons(frag->len - sizeof(struct ipv6hdr));
859 return frag;
866 struct sk_buff *frag;
933 skb_walk_frags(skb, frag) {
935 if (frag->len > mtu ||
936 ((frag->len & 7) && frag->next) ||
937 skb_headroom(frag) < (hlen + hroom + sizeof(struct frag_hdr)))
941 if (skb_shared(frag))
944 BUG_ON(frag->sk);
946 frag->sk = skb->sk;
947 frag->destructor = sock_wfree;
949 skb->truesize -= frag->truesize;
963 if (iter.frag)
972 if (err || !iter.frag)
987 kfree_skb_list(iter.frag);
996 if (frag2 == frag)
1018 frag = ip6_frag_next(skb, &state);
1019 if (IS_ERR(frag)) {
1020 err = PTR_ERR(frag);
1027 skb_set_delivery_time(frag, tstamp, tstamp_type);
1028 err = output(net, sk, frag);