]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: Bail from handle_command() if _generate_command_map() fails 48846/head
authorNikhil Kshirsagar <nikhil.kshirsagar@canonical.com>
Mon, 12 Sep 2022 06:33:59 +0000 (06:33 +0000)
committerNikhil Kshirsagar <nikhil.kshirsagar@canonica.com>
Fri, 11 Nov 2022 10:08:23 +0000 (15:38 +0530)
Bail out of handle_command() if _generate_command_map() throws
an exception due to invalid json. This is an additional fix
for the one that went in through
1109e62f6a3c0a7e06a088c4b833c8ecec51f791

Fixes: https://tracker.ceph.com/issues/57859
Signed-off-by: Nikhil Kshirsagar <nikhil.kshirsagar@canonical.com>
(cherry picked from commit f3d771aabc07f7517efb051bf70d2df1657172b4)

src/mon/Monitor.cc

index e5f304d10b2133b29345dc16887629ab3009baa6..967622f1f84d802890ebbbe8666df1587ecd2592 100644 (file)
@@ -3443,9 +3443,9 @@ void Monitor::handle_command(MonOpRequestRef op)
   // Catch bad_cmd_get exception if _generate_command_map() throws it
   try {
     _generate_command_map(cmdmap, param_str_map);
-  }
-  catch(bad_cmd_get& e) {
+  } catch (const bad_cmd_get& e) {
     reply_command(op, -EINVAL, e.what(), 0);
+    return;
   }
 
   if (!_allowed_command(session, service, prefix, cmdmap,