rfv               447 net/ipv4/raw.c static int raw_probe_proto_opt(struct raw_frag_vec *rfv, struct flowi4 *fl4)
rfv               455 net/ipv4/raw.c 	rfv->hlen = 2;
rfv               457 net/ipv4/raw.c 	err = memcpy_from_msg(rfv->hdr.c, rfv->msg, rfv->hlen);
rfv               461 net/ipv4/raw.c 	fl4->fl4_icmp_type = rfv->hdr.icmph.type;
rfv               462 net/ipv4/raw.c 	fl4->fl4_icmp_code = rfv->hdr.icmph.code;
rfv               470 net/ipv4/raw.c 	struct raw_frag_vec *rfv = from;
rfv               472 net/ipv4/raw.c 	if (offset < rfv->hlen) {
rfv               473 net/ipv4/raw.c 		int copy = min(rfv->hlen - offset, len);
rfv               476 net/ipv4/raw.c 			memcpy(to, rfv->hdr.c + offset, copy);
rfv               480 net/ipv4/raw.c 				csum_partial_copy_nocheck(rfv->hdr.c + offset,
rfv               493 net/ipv4/raw.c 	offset -= rfv->hlen;
rfv               495 net/ipv4/raw.c 	return ip_generic_getfrag(rfv->msg, to, offset, len, odd, skb);
rfv               511 net/ipv4/raw.c 	struct raw_frag_vec rfv;
rfv               634 net/ipv4/raw.c 		rfv.msg = msg;
rfv               635 net/ipv4/raw.c 		rfv.hlen = 0;
rfv               637 net/ipv4/raw.c 		err = raw_probe_proto_opt(&rfv, &fl4);
rfv               667 net/ipv4/raw.c 				     &rfv, len, 0,
rfv               714 net/ipv6/raw.c static int rawv6_probe_proto_opt(struct raw6_frag_vec *rfv, struct flowi6 *fl6)
rfv               719 net/ipv6/raw.c 		rfv->hlen = 2;
rfv               720 net/ipv6/raw.c 		err = memcpy_from_msg(rfv->c, rfv->msg, rfv->hlen);
rfv               722 net/ipv6/raw.c 			fl6->fl6_icmp_type = rfv->c[0];
rfv               723 net/ipv6/raw.c 			fl6->fl6_icmp_code = rfv->c[1];
rfv               727 net/ipv6/raw.c 		rfv->hlen = 4;
rfv               728 net/ipv6/raw.c 		err = memcpy_from_msg(rfv->c, rfv->msg, rfv->hlen);
rfv               730 net/ipv6/raw.c 			fl6->fl6_mh_type = rfv->c[2];
rfv               738 net/ipv6/raw.c 	struct raw6_frag_vec *rfv = from;
rfv               740 net/ipv6/raw.c 	if (offset < rfv->hlen) {
rfv               741 net/ipv6/raw.c 		int copy = min(rfv->hlen - offset, len);
rfv               744 net/ipv6/raw.c 			memcpy(to, rfv->c + offset, copy);
rfv               748 net/ipv6/raw.c 				csum_partial_copy_nocheck(rfv->c + offset,
rfv               761 net/ipv6/raw.c 	offset -= rfv->hlen;
rfv               763 net/ipv6/raw.c 	return ip_generic_getfrag(rfv->msg, to, offset, len, odd, skb);
rfv               778 net/ipv6/raw.c 	struct raw6_frag_vec rfv;
rfv               898 net/ipv6/raw.c 		rfv.msg = msg;
rfv               899 net/ipv6/raw.c 		rfv.hlen = 0;
rfv               900 net/ipv6/raw.c 		err = rawv6_probe_proto_opt(&rfv, &fl6);
rfv               949 net/ipv6/raw.c 		err = ip6_append_data(sk, raw6_getfrag, &rfv,