]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: fix subuser rm command failure 7301/head
authorOrit Wasserman <owasserm@redhat.com>
Wed, 20 Jan 2016 16:24:38 +0000 (17:24 +0100)
committerOrit Wasserman <owasserm@redhat.com>
Wed, 20 Jan 2016 20:00:28 +0000 (21:00 +0100)
Fixes: 14375
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
src/rgw/rgw_user.cc

index 81b96bb203dc4f6b9a234020fdf006a891c145b8..fb313d0071b48885d18c6dbdcbecc021898de839 100644 (file)
@@ -1428,14 +1428,17 @@ int RGWSubUserPool::execute_remove(RGWUserAdminOpState& op_state,
 
   map<std::string, RGWSubUser>::iterator siter;
   siter = subuser_map->find(subuser_str);
-
+  if (siter == subuser_map->end()){
+    set_err_msg(err_msg, "subuser not found: " + subuser_str);
+    return -EINVAL;
+  }
   if (!op_state.has_existing_subuser()) {
     set_err_msg(err_msg, "subuser not found: " + subuser_str);
     return -EINVAL;
   }
 
   // always purge all associate keys
-  user->keys.remove_subuser_keys(op_state, &subprocess_msg, defer_user_update);
+  user->keys.remove_subuser_keys(op_state, &subprocess_msg, true);
 
   // remove the subuser from the user info
   subuser_map->erase(siter);