]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: fix get bucket policy s3 compatible issue 15280/head
authorEnming Zhang <enming.zhang@umcloud.com>
Thu, 25 May 2017 07:02:51 +0000 (15:02 +0800)
committerEnming Zhang <enming.zhang@umcloud.com>
Fri, 9 Jun 2017 11:53:26 +0000 (19:53 +0800)
commit01c35281af764cc3a448e135c8a7f362aad28594
tree9cf4808772775ab583ffbbda42ecef769970fc1c
parent9eda2bb9ff46ba9b3f9e54d705da1e66f7a7e9d9
rgw: fix get bucket policy s3 compatible issue

In AWS S3 get bucket policy should return 404 error code when bucket policy does not exist like following:

Response: {'status': 404, 'headers': {'x-amz-id-2': 'Gncp2wjrOy2Juy0RFbuyWjGFCFNSQd8vXIi8sbxhSdR7bi4VmjSlbmRKkUr3dK3+tmewATJSwZw=', 'server': 'AmazonS3', 'transfer-encoding': 'chunked', 'x-amz-request-id': 'D3F18909B654014A', 'date': 'Thu, 25 May 2017 03:28:35 GMT', 'content-type': 'application/xml'}, 'reason': 'Not Found', 'data': '<?xml version="1.0" encoding="UTF-8"?>\n<Error><Code>NoSuchBucketPolicy</Code><Message>The bucket policy does not exist</Message><BucketName>em-111</BucketName><RequestId>D3F18909B654014A</RequestId><HostId>Gncp2wjrOy2Juy0RFbuyWjGFCFNSQd8vXIi8sbxhSdR7bi4VmjSlbmRKkUr3dK3+tmewATJSwZw=</HostId></Error>'}

Now RGW return is:

Response: {'status': 404, 'headers': {'date': 'Thu, 25 May 2017 06:38:48 GMT', 'content-length': '270', 'x-amz-request-id': 'tx00000000000000000000e-0059267bf8-1013-default', 'content-type': 'application/xml', 'accept-ranges': 'bytes'}, 'reason': 'Not Found', 'data': '<?xml version="1.0" encoding="UTF-8"?><Error><Code>NoSuchBucketPolicy</Code><Message>The bucket policy does not exist</Message><BucketName>111</BucketName><RequestId>tx00000000000000000000e-0059267bf8-1013-default</RequestId><HostId>1013-default-default</HostId></Error>'}

Signed-off-by: Enming Zhang <enming.zhang@umcloud.com>
src/rgw/rgw_common.cc
src/rgw/rgw_common.h
src/rgw/rgw_op.cc