From: Yan, Zheng Date: Mon, 18 Jan 2016 06:25:54 +0000 (+0800) Subject: mon/MDSMonitor: handle invalid input for "ceph mds setmap" X-Git-Tag: v10.0.3~9^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=b4023a46b94973c0fc74603af6852bf1b8ae3eb6;p=ceph.git mon/MDSMonitor: handle invalid input for "ceph mds setmap" Fixes: #14380 Signed-off-by: Yan, Zheng --- diff --git a/src/mon/MDSMonitor.cc b/src/mon/MDSMonitor.cc index 664af7b03e75..c0fad8e07489 100644 --- a/src/mon/MDSMonitor.cc +++ b/src/mon/MDSMonitor.cc @@ -1568,7 +1568,12 @@ int MDSMonitor::filesystem_command( r = 0; } else if (prefix == "mds setmap") { MDSMap map; - map.decode(m->get_data()); + try { + map.decode(m->get_data()); + } catch(buffer::error &e) { + ss << "invalid mdsmap"; + return -EINVAL; + } epoch_t e = 0; int64_t epochnum; if (cmd_getval(g_ceph_context, cmdmap, "epoch", epochnum))