ipvlan: Fix insufficient skb linear check for arp
authorGao Feng <gfree.wind@vip.163.com>
Thu, 23 Nov 2017 03:47:11 +0000 (11:47 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 23 Nov 2017 18:37:02 +0000 (03:37 +0900)
commit5fc9220a6719574b37813d4330cc5c1ffe6d5c16
tree069ad0802e58b2e5e56f7e76c394bc13b40e81eb
parentf9094b7603c011d27db7ba109e69881c72fa611d
ipvlan: Fix insufficient skb linear check for arp

In the function ipvlan_get_L3_hdr, current codes use pskb_may_pull to
make sure the skb header has enough linear room for arp header. But it
would access the arp payload in func ipvlan_addr_lookup. So it still may
access the unepxected memory.

Now use arp_hdr_len(port->dev) instead of the arp header as the param.

Signed-off-by: Gao Feng <gfree.wind@vip.163.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ipvlan/ipvlan_core.c