From: Douglas Fuller Date: Mon, 13 Nov 2017 22:31:34 +0000 (-0500) Subject: mon/OSDMonitor: disallow "all" as a key or value name X-Git-Tag: v13.0.1~133^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d395daa0ab83871acbc69947bdf4b9acf459cf95;p=ceph.git mon/OSDMonitor: disallow "all" as a key or value name This avoids conflict with the wildcard "all" used for OSD auth caps. Signed-off-by: Douglas Fuller --- diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index b71a682a806d..ec69c16ba739 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -6157,6 +6157,20 @@ int OSDMonitor::prepare_command_pool_application(const string &prefix, cmd_getval(cct, cmdmap, "app", app); bool app_exists = (p.application_metadata.count(app) > 0); + string key; + cmd_getval(cct, cmdmap, "key", key); + if (key == "all") { + ss << "key cannot be 'all'"; + return -EINVAL; + } + + string value; + cmd_getval(cct, cmdmap, "value", value); + if (value == "all") { + ss << "value cannot be 'all'"; + return -EINVAL; + } + if (boost::algorithm::ends_with(prefix, "enable")) { if (app.empty()) { ss << "application name must be provided";