]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: dump object metadata in response for COPY request of Swift API.
authorRadoslaw Zarzynski <rzarzynski@mirantis.com>
Tue, 17 Mar 2015 13:06:37 +0000 (14:06 +0100)
committerLoic Dachary <ldachary@redhat.com>
Wed, 6 May 2015 10:05:40 +0000 (12:05 +0200)
Fixes: #10663
Backport: hammer
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
(cherry picked from commit c52b75edeaeef19471b9aca772bf08055bf04031)

src/rgw/rgw_rest_swift.cc

index a2926a5d956aeb0e773614a142a3b242ae5df84c..44caa2ae42b2db1a68d167c8902c1b0e5482f9b2 100644 (file)
@@ -638,14 +638,17 @@ void RGWCopyObj_ObjStore_SWIFT::dump_copy_info()
 void RGWCopyObj_ObjStore_SWIFT::send_response()
 {
   if (!sent_header) {
-   if (!ret)
+    string content_type;
+    if (!ret)
       ret = STATUS_CREATED;
     set_req_state_err(s, ret);
     dump_errno(s);
     dump_etag(s, etag.c_str());
     dump_last_modified(s, mtime);
     dump_copy_info();
-    end_header(s, this);
+    get_contype_from_attrs(attrs, content_type);
+    dump_object_metadata(s, attrs);
+    end_header(s, this, !content_type.empty() ? content_type.c_str() : "binary/octet-stream");
   } else {
     s->formatter->close_section();
     rgw_flush_formatter(s, s->formatter);