From c3c0c828da5a64ca896475c1b0c369fde1bbd76a Mon Sep 17 00:00:00 2001 From: liuchang0812 Date: Mon, 27 Mar 2017 13:08:12 +0800 Subject: [PATCH] rgw/lifecycle: do not send lifecycle rules when GetLifeCycle failed Now, RGW will send two HTTP responses when GetLifeCycle failed. The first one is Error Respnse like 404, and the second is lifecycle rules. It will breaks s3 sdk and s3 utilities. Fixes: http://tracker.ceph.com/issues/19363 Signed-off-by: liuchang0812 --- src/rgw/rgw_rest_s3.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 277ff62c256..acac0c50c33 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -2374,6 +2374,9 @@ void RGWGetLC_ObjStore_S3::send_response() end_header(s, this, "application/xml"); dump_start(s); + if (op_ret < 0) + return; + config.dump_xml(s->formatter); rgw_flush_formatter_and_reset(s, s->formatter); } -- 2.47.3