]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
xfrm: fix possible derferencing in error path
authorAntony Antony <antony.antony@secunet.com>
Wed, 10 Apr 2024 17:27:12 +0000 (19:27 +0200)
committerSteffen Klassert <steffen.klassert@secunet.com>
Thu, 11 Apr 2024 08:23:36 +0000 (10:23 +0200)
Fix derferencing pointer when xfrm_policy_lookup_bytype returns an
 error.

Fixes: 63b21caba17e ("xfrm: introduce forwarding of ICMP Error messages")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/kernel-janitors/f6ef0d0d-96de-4e01-9dc3-c1b3a6338653@moroto.mountain/
Signed-off-by: Antony Antony <antony.antony@secunet.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
net/xfrm/xfrm_policy.c

index 6affe5cd85d8f14fb1689b830422eaea56d0dafc..53d8fabfa68580a24359a7ef3bb8f82a76715c98 100644 (file)
@@ -3593,6 +3593,8 @@ xfrm_policy *xfrm_in_fwd_icmp(struct sk_buff *skb,
                        return pol;
 
                pol = xfrm_policy_lookup(net, &fl1, family, XFRM_POLICY_FWD, if_id);
+               if (IS_ERR(pol))
+                       pol = NULL;
        }
 
        return pol;