From: Abhishek Lekshmanan Date: Tue, 1 Aug 2017 15:42:31 +0000 (+0200) Subject: rgw_lc: support for AWSv4 authentication X-Git-Tag: v12.1.3~21^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ea1e99bca365b8110b5ff8d08889fb02e147a9d1;p=ceph.git rgw_lc: support for AWSv4 authentication adding support for AWSv4 authentication for Put Object LC, also adding types to all of the LC ops in the process Signed-off-by: Abhishek Lekshmanan (cherry picked from commit cc51f32c22f294f59b369350e54b86892015cbab) --- diff --git a/src/rgw/rgw_common.h b/src/rgw/rgw_common.h index 6dcdde5be0c..4fb476859e7 100644 --- a/src/rgw/rgw_common.h +++ b/src/rgw/rgw_common.h @@ -486,6 +486,9 @@ enum RGWOpType { RGW_OP_PUT_OBJ_TAGGING, RGW_OP_GET_OBJ_TAGGING, RGW_OP_DELETE_OBJ_TAGGING, + RGW_OP_PUT_LC, + RGW_OP_GET_LC, + RGW_OP_DELETE_LC, /* rgw specific */ RGW_OP_ADMIN_SET_METADATA, RGW_OP_GET_OBJ_LAYOUT, diff --git a/src/rgw/rgw_op.h b/src/rgw/rgw_op.h index ed91951aba9..d3a63aee73d 100644 --- a/src/rgw/rgw_op.h +++ b/src/rgw/rgw_op.h @@ -1390,6 +1390,7 @@ public: void send_response() override = 0; const string name() override { return "get_lifecycle"; } + RGWOpType get_type() override { return RGW_OP_GET_LC; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -1425,6 +1426,7 @@ public: virtual int get_params() = 0; void send_response() override = 0; const string name() override { return "put_lifecycle"; } + RGWOpType get_type() override { return RGW_OP_PUT_LC; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -1448,6 +1450,7 @@ public: void send_response() override = 0; const string name() override { return "delete_lifecycle"; } + RGWOpType get_type() override { return RGW_OP_DELETE_LC; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 0128b8b852b..9c504ca5910 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -3821,6 +3821,7 @@ AWSGeneralAbstractor::get_auth_data_v4(const req_state* const s, case RGW_OP_SET_BUCKET_WEBSITE: case RGW_OP_PUT_BUCKET_POLICY: case RGW_OP_PUT_OBJ_TAGGING: + case RGW_OP_PUT_LC: break; default: dout(10) << "ERROR: AWS4 completion for this operation NOT IMPLEMENTED" << dendl;