int rgw_forward_request_to_master(const DoutPrefixProvider* dpp,
const rgw::SiteConfig& site,
- const rgw_user& uid,
+ const rgw_owner& effective_owner,
bufferlist* indata, JSONParser* jp,
req_info& req, optional_yield y)
{
creds, zg->second.id, zg->second.api_name};
bufferlist outdata;
constexpr size_t max_response_size = 128 * 1024; // we expect a very small response
- int ret = conn.forward(dpp, uid, req, nullptr, max_response_size,
- indata, &outdata, y);
+ int ret = conn.forward(dpp, effective_owner, req, nullptr,
+ max_response_size, indata, &outdata, y);
if (ret < 0) {
return ret;
}
if (op_ret < 0)
return;
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteBucketTags::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
if (op_ret < 0)
return;
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteBucketReplication::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
}
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << " forward_request_to_master returned ret=" << op_ret << dendl;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "NOTICE: forward_to_master failed on bucket=" << s->bucket->get_name()
// apply bucket creation on the master zone first
bufferlist in_data;
JSONParser jp;
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, &jp, s->info, y);
if (op_ret < 0) {
return;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
if (op_ret == -ENOENT) {
// forward bucket acl requests to meta master zone
if ((rgw::sal::Object::empty(s->object.get()))) {
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
ldpp_dout(this, 15) << "New LifecycleConfiguration:" << ss.str() << dendl;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteLC::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
if (op_ret < 0)
return;
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteCORS::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
if (op_ret < 0)
return;
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
req_info req = s->info;
forward_req_info(dpp, s->cct, req, path.bucket_name);
- ret = rgw_forward_request_to_master(dpp, *s->penv.site, s->user->get_id(),
+ ret = rgw_forward_request_to_master(dpp, *s->penv.site, s->owner.id,
nullptr, nullptr, req, y);
if (ret < 0) {
goto delop_fail;
req_info req = s->info;
forward_req_info(this, s->cct, req, bucket_name);
- ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&in_data, &jp, req, y);
if (ret < 0) {
return ret;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 20) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteBucketPolicy::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 20) << __func__ << "forward_request_to_master returned ret=" << op_ret << dendl;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteBucketPublicAccessBlock::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
return;
}
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
&data, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 20) << "forward_request_to_master returned ret=" << op_ret << dendl;
void RGWDeleteBucketEncryption::execute(optional_yield y)
{
- op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->user->get_id(),
+ op_ret = rgw_forward_request_to_master(this, *s->penv.site, s->owner.id,
nullptr, nullptr, s->info, y);
if (op_ret < 0) {
ldpp_dout(this, 0) << "forward_request_to_master returned ret=" << op_ret << dendl;
}
size_t get_endpoint_count() const { return endpoints.size(); }
- virtual void populate_params(param_vec_t& params, const rgw_user *uid, const std::string& zonegroup);
+ virtual void populate_params(param_vec_t& params, const rgw_owner* uid, const std::string& zonegroup);
/* sync request */
- int forward(const DoutPrefixProvider *dpp, const rgw_user& uid, const req_info& info, obj_version *objv, size_t max_response, bufferlist *inbl, bufferlist *outbl, optional_yield y);
+ int forward(const DoutPrefixProvider *dpp, const rgw_owner& uid, const req_info& info, obj_version *objv, size_t max_response, bufferlist *inbl, bufferlist *outbl, optional_yield y);
/* sync request */
int forward_iam_request(const DoutPrefixProvider *dpp, const req_info& info, obj_version *objv, size_t max_response, bufferlist *inbl, bufferlist *outbl, optional_yield y);
/* async requests */
int put_obj_send_init(const rgw_obj& obj, const rgw_http_param_pair *extra_params, RGWRESTStreamS3PutObj **req);
- int put_obj_async_init(const DoutPrefixProvider *dpp, const rgw_user& uid, const rgw_obj& obj,
+ int put_obj_async_init(const DoutPrefixProvider *dpp, const rgw_owner& uid, const rgw_obj& obj,
std::map<std::string, bufferlist>& attrs, RGWRESTStreamS3PutObj **req);
int complete_request(RGWRESTStreamS3PutObj *req, std::string& etag,
ceph::real_time *mtime, optional_yield y);
struct get_obj_params {
- rgw_user uid;
+ rgw_owner uid;
req_info *info{nullptr};
const ceph::real_time *mod_ptr{nullptr};
const ceph::real_time *unmod_ptr{nullptr};
int get_obj(const DoutPrefixProvider *dpp, const rgw_obj& obj, const get_obj_params& params, bool send, RGWRESTStreamRWRequest **req);
- int get_obj(const DoutPrefixProvider *dpp, const rgw_user& uid, req_info *info /* optional */, const rgw_obj& obj,
+ int get_obj(const DoutPrefixProvider *dpp, const rgw_owner& uid, req_info *info /* optional */, const rgw_obj& obj,
const ceph::real_time *mod_ptr, const ceph::real_time *unmod_ptr,
uint32_t mod_zone_id, uint64_t mod_pg_ver,
bool prepend_metadata, bool get_op, bool rgwx_stat, bool sync_manifest,
params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "zonegroup", zonegroup));
}
}
- void populate_uid(param_vec_t& params, const rgw_user *uid) {
+ void populate_uid(param_vec_t& params, const rgw_owner* uid) {
if (uid) {
- std::string uid_str = uid->to_str();
- if (!uid->empty()){
- params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "uid", uid_str));
- }
+ params.emplace_back(RGW_SYS_PARAM_PREFIX "uid", to_string(*uid));
}
}
};
RGWRESTConn(_cct, _remote_id, endpoints, _cred, _zone_group, _api_name, _host_style) {}
~S3RESTConn() override = default;
- void populate_params(param_vec_t& params, const rgw_user *uid, const std::string& zonegroup) override {
+ void populate_params(param_vec_t& params, const rgw_owner* uid,
+ const std::string& zonegroup) override {
// do not populate any params in S3 REST Connection.
return;
}