Lines Matching refs:skb2
576 struct sk_buff *skb2; in ip4ip6_err() local
612 skb2 = skb_clone(skb, GFP_ATOMIC); in ip4ip6_err()
613 if (!skb2) in ip4ip6_err()
616 skb_dst_drop(skb2); in ip4ip6_err()
618 skb_pull(skb2, offset); in ip4ip6_err()
619 skb_reset_network_header(skb2); in ip4ip6_err()
620 eiph = ip_hdr(skb2); in ip4ip6_err()
630 skb2->dev = rt->dst.dev; in ip4ip6_err()
647 skb_dst_set(skb2, &rt->dst); in ip4ip6_err()
650 if (ip_route_input(skb2, eiph->daddr, eiph->saddr, eiph->tos, in ip4ip6_err()
651 skb2->dev) || in ip4ip6_err()
652 skb_dst(skb2)->dev->type != ARPHRD_TUNNEL) in ip4ip6_err()
658 if (rel_info > dst_mtu(skb_dst(skb2))) in ip4ip6_err()
661 skb_dst(skb2)->ops->update_pmtu(skb_dst(skb2), NULL, skb2, rel_info); in ip4ip6_err()
664 skb_dst(skb2)->ops->redirect(skb_dst(skb2), NULL, skb2); in ip4ip6_err()
666 icmp_send(skb2, rel_type, rel_code, htonl(rel_info)); in ip4ip6_err()
669 kfree_skb(skb2); in ip4ip6_err()
690 struct sk_buff *skb2 = skb_clone(skb, GFP_ATOMIC); in ip6ip6_err() local
692 if (!skb2) in ip6ip6_err()
695 skb_dst_drop(skb2); in ip6ip6_err()
696 skb_pull(skb2, offset); in ip6ip6_err()
697 skb_reset_network_header(skb2); in ip6ip6_err()
700 rt = rt6_lookup(dev_net(skb->dev), &ipv6_hdr(skb2)->saddr, in ip6ip6_err()
704 skb2->dev = rt->dst.dev; in ip6ip6_err()
706 icmpv6_send(skb2, rel_type, rel_code, rel_info); in ip6ip6_err()
710 kfree_skb(skb2); in ip6ip6_err()