]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: add a proper check to evict clients with id 0
authorneeraj pratap singh <neerajpratapsingh@li-ff7f0d4c-3462-11b2-a85c-d4004c0fa1a0.ibm.com>
Mon, 24 Feb 2025 15:13:01 +0000 (20:43 +0530)
committerNeeraj Pratap Singh <Neeraj.Pratap.Singh1@ibm.com>
Wed, 18 Mar 2026 09:34:27 +0000 (15:04 +0530)
Fixes: https://tracker.ceph.com/issues/70198
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
src/mds/SessionMap.cc

index 95daccac2ec68287c6fb1cef31bbad7b22850404..3aa3969d2943ed77c16d23c0248bae66a00ebba7 100644 (file)
@@ -1303,10 +1303,16 @@ int SessionFilter::parse(
       if (v == "*") {
         // evict all clients , by default id set to 0
         return 0;
-      } else if (v == "0") {
-        *ss << "Invalid value";
-        return -EINVAL;
-      }
+      } else {
+        try {
+          if (!std::stoi(v)) {
+            *ss << "Invalid value";
+            return -EINVAL; } 
+          } catch (...) {
+            *ss << "Invalid input";
+            return -EINVAL;
+          }
+        }
       id = strict_strtoll(v.c_str(), 10, &err);
       if (!err.empty()) {
         *ss << err;