From: Yanhu Cao Date: Wed, 7 Apr 2021 02:13:07 +0000 (+0800) Subject: mds: ensure export_pin rank < max_mds X-Git-Tag: v17.1.0~2313^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=3017b78225e4e0f74f81218107ed2770ab203fff;p=ceph-ci.git mds: ensure export_pin rank < max_mds Signed-off-by: Yanhu Cao --- 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);