From: Zhao Chao Date: Tue, 4 Jul 2017 07:44:41 +0000 (+0800) Subject: rgw: add a new error code for non-existed subuser. X-Git-Tag: v12.1.1~132^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F16095%2Fhead;p=ceph.git rgw: add a new error code for non-existed subuser. When modify or delete non-existed subuser, a new error code 'NoSuchSubUser' is more specific than 'InvalidArgument'. Signed-off-by: Zhao Chao --- diff --git a/src/rgw/rgw_common.cc b/src/rgw/rgw_common.cc index d4e494073ca6..73c650c5ff6c 100644 --- a/src/rgw/rgw_common.cc +++ b/src/rgw/rgw_common.cc @@ -89,6 +89,7 @@ rgw_http_errors rgw_http_s3_errors({ { ERR_NOT_FOUND, {404, "Not Found"}}, { ERR_NO_SUCH_LC, {404, "NoSuchLifecycleConfiguration"}}, { ERR_NO_SUCH_BUCKET_POLICY, {404, "NoSuchBucketPolicy"}}, + { ERR_NO_SUCH_SUBUSER, {404, "NoSuchSubUser"}}, { ERR_METHOD_NOT_ALLOWED, {405, "MethodNotAllowed" }}, { ETIMEDOUT, {408, "RequestTimeout" }}, { EEXIST, {409, "BucketAlreadyExists" }}, diff --git a/src/rgw/rgw_common.h b/src/rgw/rgw_common.h index bf05d13a12f8..c71aa4726093 100644 --- a/src/rgw/rgw_common.h +++ b/src/rgw/rgw_common.h @@ -198,6 +198,7 @@ using ceph::crypto::MD5; #define ERR_NO_SUCH_WEBSITE_CONFIGURATION 2039 #define ERR_AMZ_CONTENT_SHA256_MISMATCH 2040 #define ERR_NO_SUCH_LC 2041 +#define ERR_NO_SUCH_SUBUSER 2043 #define ERR_USER_SUSPENDED 2100 #define ERR_INTERNAL_ERROR 2200 #define ERR_NOT_IMPLEMENTED 2201 diff --git a/src/rgw/rgw_user.cc b/src/rgw/rgw_user.cc index a73ff047f583..4eb803e5cf4b 100644 --- a/src/rgw/rgw_user.cc +++ b/src/rgw/rgw_user.cc @@ -1419,11 +1419,11 @@ int RGWSubUserPool::execute_remove(RGWUserAdminOpState& op_state, siter = subuser_map->find(subuser_str); if (siter == subuser_map->end()){ set_err_msg(err_msg, "subuser not found: " + subuser_str); - return -EINVAL; + return -ERR_NO_SUCH_SUBUSER; } if (!op_state.has_existing_subuser()) { set_err_msg(err_msg, "subuser not found: " + subuser_str); - return -EINVAL; + return -ERR_NO_SUCH_SUBUSER; } // always purge all associate keys @@ -1479,7 +1479,7 @@ int RGWSubUserPool::execute_modify(RGWUserAdminOpState& op_state, std::string *e if (!op_state.has_existing_subuser()) { set_err_msg(err_msg, "subuser does not exist"); - return -EINVAL; + return -ERR_NO_SUCH_SUBUSER; } subuser_pair.first = subuser_str;