From 3017b78225e4e0f74f81218107ed2770ab203fff Mon Sep 17 00:00:00 2001 From: Yanhu Cao Date: Wed, 7 Apr 2021 10:13:07 +0800 Subject: [PATCH] mds: ensure export_pin rank < max_mds Signed-off-by: Yanhu Cao --- src/mds/Server.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mds/Server.cc b/src/mds/Server.cc index 4869ff2472c..67b5c0db934 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -5704,6 +5704,10 @@ void Server::handle_set_vxattr(MDRequestRef& mdr, CInode *cur) try { rank = boost::lexical_cast(value); if (rank < 0) rank = MDS_RANK_NONE; + else if (rank >= MAX_MDS) { + respond_to_request(mdr, -CEPHFS_EDOM); + return; + } } catch (boost::bad_lexical_cast const&) { dout(10) << "bad vxattr value, unable to parse int for " << name << dendl; respond_to_request(mdr, -CEPHFS_EINVAL); -- 2.39.5