geneve: avoid use-after-free of skb->data
authorSabrina Dubroca <sd@queasysnail.net>
Fri, 2 Dec 2016 15:49:29 +0000 (16:49 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 2 Dec 2016 19:07:11 +0000 (14:07 -0500)
commit5b01014759991887b1e450c9def01e58c02ab81b
tree9e8800bb8a3c9b6eb26fc8c224f19b77cb824072
parent3de81b758853f0b29c61e246679d20b513c4cfec
geneve: avoid use-after-free of skb->data

geneve{,6}_build_skb can end up doing a pskb_expand_head(), which
makes the ip_hdr(skb) reference we stashed earlier stale. Since it's
only needed as an argument to ip_tunnel_ecn_encap(), move this
directly in the function call.

Fixes: 08399efc6319 ("geneve: ensure ECN info is handled properly in all tx/rx paths")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Reviewed-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/geneve.c