From: Yehuda Sadeh Date: Tue, 21 Mar 2017 21:17:58 +0000 (-0700) Subject: rgw: make key param in RGWRESTStreamRWRequest::send_request() optional X-Git-Tag: ses5-milestone6~9^2~3^2~59 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9f494ff473ea49ad46f2462c7df9ce60fc3a1773;p=ceph.git rgw: make key param in RGWRESTStreamRWRequest::send_request() optional Signed-off-by: Yehuda Sadeh --- diff --git a/src/rgw/rgw_rest_client.cc b/src/rgw/rgw_rest_client.cc index f4cab8ab21b9..65f2bc6b334f 100644 --- a/src/rgw/rgw_rest_client.cc +++ b/src/rgw/rgw_rest_client.cc @@ -623,10 +623,10 @@ int RGWRESTStreamRWRequest::send_request(RGWAccessKey& key, map& url_encode(obj.key.name, urlsafe_object); string resource = urlsafe_bucket + "/" + urlsafe_object; - return send_request(key, extra_headers, resource, mgr); + return send_request(&key, extra_headers, resource, mgr); } -int RGWRESTStreamRWRequest::send_request(RGWAccessKey& key, map& extra_headers, const string& resource, RGWHTTPManager *mgr) +int RGWRESTStreamRWRequest::send_request(RGWAccessKey *key, map& extra_headers, const string& resource, RGWHTTPManager *mgr) { string new_url = url; if (new_url[new_url.size() - 1] != '/') @@ -671,10 +671,12 @@ int RGWRESTStreamRWRequest::send_request(RGWAccessKey& key, map& new_info.init_meta_info(NULL); - int ret = sign_request(key, new_env, new_info); - if (ret < 0) { - ldout(cct, 0) << "ERROR: failed to sign request" << dendl; - return ret; + if (key) { + int ret = sign_request(*key, new_env, new_info); + if (ret < 0) { + ldout(cct, 0) << "ERROR: failed to sign request" << dendl; + return ret; + } } map& m = new_env.get_map(); diff --git a/src/rgw/rgw_rest_client.h b/src/rgw/rgw_rest_client.h index 7a3e126d8622..95222e3f0d20 100644 --- a/src/rgw/rgw_rest_client.h +++ b/src/rgw/rgw_rest_client.h @@ -105,7 +105,7 @@ public: } virtual ~RGWRESTStreamRWRequest() override {} int send_request(RGWAccessKey& key, map& extra_headers, rgw_obj& obj, RGWHTTPManager *mgr = NULL); - int send_request(RGWAccessKey& key, map& extra_headers, const string& resource, RGWHTTPManager *mgr = NULL); + int send_request(RGWAccessKey *key, map& extra_headers, const string& resource, RGWHTTPManager *mgr = NULL); int complete_request(string& etag, real_time *mtime, uint64_t *psize, map& attrs); void set_outbl(bufferlist& _outbl) { diff --git a/src/rgw/rgw_rest_conn.cc b/src/rgw/rgw_rest_conn.cc index 0071daf1e6dc..7f9a45a8f75f 100644 --- a/src/rgw/rgw_rest_conn.cc +++ b/src/rgw/rgw_rest_conn.cc @@ -249,7 +249,7 @@ int RGWRESTConn::get_resource(const string& resource, headers.insert(extra_headers->begin(), extra_headers->end()); } - ret = req.send_request(key, headers, resource, mgr); + ret = req.send_request(&key, headers, resource, mgr); if (ret < 0) { ldout(cct, 5) << __func__ << ": send_request() resource=" << resource << " returned ret=" << ret << dendl; return ret; @@ -296,7 +296,7 @@ void RGWRESTReadResource::init_common(param_vec_t *extra_headers) int RGWRESTReadResource::read() { - int ret = req.send_request(conn->get_key(), headers, resource, mgr); + int ret = req.send_request(&conn->get_key(), headers, resource, mgr); if (ret < 0) { ldout(cct, 5) << __func__ << ": send_request() resource=" << resource << " returned ret=" << ret << dendl; return ret; @@ -309,7 +309,7 @@ int RGWRESTReadResource::read() int RGWRESTReadResource::aio_read() { - int ret = req.send_request(conn->get_key(), headers, resource, mgr); + int ret = req.send_request(&conn->get_key(), headers, resource, mgr); if (ret < 0) { ldout(cct, 5) << __func__ << ": send_request() resource=" << resource << " returned ret=" << ret << dendl; return ret; @@ -357,7 +357,7 @@ void RGWRESTSendResource::init_common(param_vec_t *extra_headers) int RGWRESTSendResource::send(bufferlist& outbl) { req.set_outbl(outbl); - int ret = req.send_request(conn->get_key(), headers, resource, mgr); + int ret = req.send_request(&conn->get_key(), headers, resource, mgr); if (ret < 0) { ldout(cct, 5) << __func__ << ": send_request() resource=" << resource << " returned ret=" << ret << dendl; return ret; @@ -371,7 +371,7 @@ int RGWRESTSendResource::send(bufferlist& outbl) int RGWRESTSendResource::aio_send(bufferlist& outbl) { req.set_outbl(outbl); - int ret = req.send_request(conn->get_key(), headers, resource, mgr); + int ret = req.send_request(&conn->get_key(), headers, resource, mgr); if (ret < 0) { ldout(cct, 5) << __func__ << ": send_request() resource=" << resource << " returned ret=" << ret << dendl; return ret; diff --git a/src/rgw/rgw_sync_module_es_rest.cc b/src/rgw/rgw_sync_module_es_rest.cc index fa6764cd9b3e..8bc774fa9d34 100644 --- a/src/rgw/rgw_sync_module_es_rest.cc +++ b/src/rgw/rgw_sync_module_es_rest.cc @@ -29,13 +29,13 @@ public: virtual uint32_t op_mask() { return RGW_OP_TYPE_READ; } }; -void RGWMetadataSearch::pre_exec() +void RGWMetadataSearchOp::pre_exec() { rgw_bucket_object_pre_exec(s); } -void RGWMetadataSearch::execute() +void RGWMetadataSearchOp::execute() { op_ret = get_params(); if (op_ret < 0) @@ -54,9 +54,9 @@ void RGWMetadataSearch::execute() // conn-> } -class RGWMetadataSearch_ObjStore_S3 : public RGWMetadataSearch { +class RGWMetadataSearch_ObjStore_S3 : public RGWMetadataSearchOp { public: - RGWMetadataSearch_ObjStore_S3(RGWElasticSyncModuleInstance *_es_module) : RGWMetadataSearch(_es_module) {} + RGWMetadataSearch_ObjStore_S3(RGWElasticSyncModuleInstance *_es_module) : RGWMetadataSearchOp(_es_module) {} int get_params() override { expression = s->info.args.get("query"); @@ -84,7 +84,7 @@ protected: if (!s->info.args.exists("query")) { return nullptr; } - return new RGWMetadataSearch_ObjStore_S3; + return new RGWMetadataSearch_ObjStore_S3(es_module); } RGWOp *op_head() { return nullptr;