#include "rgw_notify_event_type.h"
#include "rgw_sal.h"
#include "rgw_sal_rados.h"
+#include "rgw_torrent.h"
#include "rgw_lua_data_filter.h"
#include "rgw_lua.h"
if (has_s3_existing_tag || has_s3_resource_tag)
rgw_iam_add_objtags(this, s, has_s3_existing_tag, has_s3_resource_tag);
- if (torrent.get_flag()) {
+ if (get_torrent) {
if (s->object->get_instance().empty()) {
action = rgw::IAM::s3GetObjectTorrent;
} else {
goto done_err;
}
/* start gettorrent */
- if (torrent.get_flag())
- {
+ if (get_torrent) {
attr_iter = attrs.find(RGW_ATTR_CRYPT_MODE);
if (attr_iter != attrs.end() && attr_iter->second.to_str() == "SSE-C-AES256") {
ldpp_dout(this, 0) << "ERROR: torrents are not supported for objects "
#include "rgw_log.h"
#include "rgw_lc.h"
-#include "rgw_torrent.h"
#include "rgw_tag.h"
#include "rgw_object_lock.h"
#include "cls/rgw/cls_rgw_client.h"
#include "include/ceph_assert.h"
-using ceph::crypto::SHA1;
-
struct req_state;
class RGWOp;
class RGWRados;
class RGWMultiCompleteUpload;
+class RGWPutObj_Torrent;
namespace rgw {
class RGWGetObj : public RGWOp {
protected:
- seed torrent; // get torrent
const char *range_str;
const char *if_mod;
const char *if_unmod;
ceph::real_time *mod_ptr;
ceph::real_time *unmod_ptr;
rgw::sal::Attrs attrs;
+ bool get_torrent = false;
bool get_data;
bool partial_content;
bool ignore_invalid_range;
get_data &= (!rgwx_stat);
}
- if (s->info.args.exists(GET_TORRENT)) {
- return torrent.get_params();
- }
return 0;
}
skip_decrypt = s->info.args.exists(RGW_SYS_PARAM_PREFIX "skip-decrypt");
}
+ get_torrent = s->info.args.exists("torrent");
+
return RGWGetObj_ObjStore::get_params(y);
}