xfrm: Fix NULL pointer dereference on policy lookup
authorSteffen Klassert <steffen.klassert@secunet.com>
Tue, 23 Mar 2021 08:26:44 +0000 (09:26 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Apr 2021 06:42:06 +0000 (08:42 +0200)
commit95d58bf5ed4324437ab02dfd0ba4143d0d1afd82
tree5b43b404bf429e2d23c05c223a55d58f03087055
parent48a443026bb65be5fa396fef2c75e15e5a1130c1
xfrm: Fix NULL pointer dereference on policy lookup

[ Upstream commit b1e3a5607034aa0a481c6f69a6893049406665fb ]

When xfrm interfaces are used in combination with namespaces
and ESP offload, we get a dst_entry NULL pointer dereference.
This is because we don't have a dst_entry attached in the ESP
offloading case and we need to do a policy lookup before the
namespace transition.

Fix this by expicit checking of skb_dst(skb) before accessing it.

Fixes: f203b76d78092 ("xfrm: Add virtual xfrm interfaces")
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/net/xfrm.h