[SRU][F:linux-bluefield][PATCH] UBUNTU: SAUCE: net/xfrm: Fix XFRM flags validity check
Bodong Wang
bodong at nvidia.com
Thu Jun 16 14:54:59 UTC 2022
From: Emeel Hakim <ehakim at nvidia.com>
BugLink: https://bugs.launchpad.net/bugs/1978967
commit a3ca11eec78 introduced a flags validity check for xfrm,
the check excluded flag XFRM_OFFLOAD_FULL from the check hence the
flag is being blocked from getting to the kernel space.
The above is preventing ipsec states from being added with the
full_offload option hence the Failure.
Fix by adding XFRM_OFFLOAD_FULL flag to the check statement which
allows the flag to get to kernel space as expected.
Fixes: a3ca11eec78 ("xfrm: enforce validity of offload input flags")
Signed-off-by: Emeel Hakim <ehakim at nvidia.com>
Signed-off-by: Bodong Wang <bodong at nvidia.com>
---
net/xfrm/xfrm_device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/xfrm/xfrm_device.c b/net/xfrm/xfrm_device.c
index 8cb04de..40960c0 100644
--- a/net/xfrm/xfrm_device.c
+++ b/net/xfrm/xfrm_device.c
@@ -206,7 +206,7 @@ int xfrm_dev_state_add(struct net *net, struct xfrm_state *x,
if (x->encap || x->tfcpad)
return -EINVAL;
- if (xuo->flags & ~(XFRM_OFFLOAD_IPV6 | XFRM_OFFLOAD_INBOUND))
+ if (xuo->flags & ~(XFRM_OFFLOAD_IPV6 | XFRM_OFFLOAD_INBOUND | XFRM_OFFLOAD_FULL))
return -EINVAL;
dev = dev_get_by_index(net, xuo->ifindex);
--
1.8.3.1
More information about the kernel-team
mailing list