Skip to content

Commit

Permalink
ipv6: gre: remove ip6gre_header_parse()
Browse files Browse the repository at this point in the history
dev_parse_header() callers provide 8 bytes of storage,
so it's not possible to store an IPv6 address.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Eric Dumazet authored and David S. Miller committed Sep 27, 2012
1 parent e2bcabe commit bcc4529
Showing 1 changed file with 0 additions and 8 deletions.
8 changes: 0 additions & 8 deletions net/ipv6/ip6_gre.c
Original file line number Diff line number Diff line change
Expand Up @@ -1279,16 +1279,8 @@ static int ip6gre_header(struct sk_buff *skb, struct net_device *dev,
return -t->hlen;
}

static int ip6gre_header_parse(const struct sk_buff *skb, unsigned char *haddr)
{
const struct ipv6hdr *ipv6h = (const struct ipv6hdr *)skb_mac_header(skb);
memcpy(haddr, &ipv6h->saddr, sizeof(struct in6_addr));
return sizeof(struct in6_addr);
}

static const struct header_ops ip6gre_header_ops = {
.create = ip6gre_header,
.parse = ip6gre_header_parse,
};

static const struct net_device_ops ip6gre_netdev_ops = {
Expand Down

0 comments on commit bcc4529

Please sign in to comment.