From: Abhishek Lekshmanan Date: Thu, 17 Aug 2017 12:54:51 +0000 (+0200) Subject: rgw: add support for ExistingObjectTag in DeleteObjectTagging X-Git-Tag: v13.0.2~246^2~21 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c7b6fdbd99b5311e5fdf9dcfa54800b91efab4bc;p=ceph.git rgw: add support for ExistingObjectTag in DeleteObjectTagging Signed-off-by: Abhishek Lekshmanan --- diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index 8be04faf859c..a3ead1ffd1b1 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -830,10 +830,10 @@ void RGWDeleteObjTags::pre_exec() int RGWDeleteObjTags::verify_permission() { if (!s->object.empty()) { - if (!verify_object_permission(s, - s->object.instance.empty() ? - rgw::IAM::s3DeleteObjectTagging: - rgw::IAM::s3DeleteObjectVersionTagging)) + iam_action = s->object.instance.empty() ? + rgw::IAM::s3DeleteObjectTagging: + rgw::IAM::s3DeleteObjectVersionTagging; + if (!verify_object_permission(s, iam_action)) return -EACCES; } return 0; @@ -846,6 +846,7 @@ void RGWDeleteObjTags::execute() rgw_obj obj; obj = rgw_obj(s->bucket, s->object); + rgw_iam_eval_existing_objtags(store, s, obj, iam_action); store->set_atomic(s->obj_ctx, obj); map attrs; map rmattr;