From: Antony Antony Date: Tue, 26 May 2026 19:10:03 +0000 (+0200) Subject: xfrm: restrict netlink attributes for XFRM_MSG_MIGRATE_STATE X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=c4460171d78a75282a760c0b5f39f59bb044e61d;p=thirdparty%2Flinux.git xfrm: restrict netlink attributes for XFRM_MSG_MIGRATE_STATE Only accept XFRMA used in this method, reject the rest. Signed-off-by: Antony Antony Signed-off-by: Steffen Klassert --- diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c index b9fbb8d13c1a..e1010b5315e9 100644 --- a/net/xfrm/xfrm_user.c +++ b/net/xfrm/xfrm_user.c @@ -3788,6 +3788,30 @@ static int xfrm_reject_unused_attr(int type, struct nlattr **attrs, } } + if (type == XFRM_MSG_MIGRATE_STATE) { + int i; + + for (i = 0; i <= XFRMA_MAX; i++) { + if (!attrs[i]) + continue; + + switch (i) { + case XFRMA_MARK: + case XFRMA_ENCAP: + case XFRMA_OFFLOAD_DEV: + case XFRMA_SET_MARK: + case XFRMA_SET_MARK_MASK: + case XFRMA_MTIMER_THRESH: + case XFRMA_NAT_KEEPALIVE_INTERVAL: + break; + default: + NL_SET_ERR_MSG_ATTR(extack, attrs[i], + "Unsupported attribute in XFRM_MSG_MIGRATE_STATE"); + return -EINVAL; + } + } + } + return 0; }