diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/sit.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c index cfba99b2c2a4..98fe53694a65 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c | |||
@@ -592,15 +592,10 @@ out: | |||
592 | 592 | ||
593 | static int ipip6_rcv(struct sk_buff *skb) | 593 | static int ipip6_rcv(struct sk_buff *skb) |
594 | { | 594 | { |
595 | const struct iphdr *iph; | 595 | const struct iphdr *iph = ip_hdr(skb); |
596 | struct ip_tunnel *tunnel; | 596 | struct ip_tunnel *tunnel; |
597 | int err; | 597 | int err; |
598 | 598 | ||
599 | if (!pskb_may_pull(skb, sizeof(struct ipv6hdr))) | ||
600 | goto out; | ||
601 | |||
602 | iph = ip_hdr(skb); | ||
603 | |||
604 | tunnel = ipip6_tunnel_lookup(dev_net(skb->dev), skb->dev, | 599 | tunnel = ipip6_tunnel_lookup(dev_net(skb->dev), skb->dev, |
605 | iph->saddr, iph->daddr); | 600 | iph->saddr, iph->daddr); |
606 | if (tunnel != NULL) { | 601 | if (tunnel != NULL) { |