From d2567bfbdf0e9fa6db0a6ed1534831ec859a3e03 Mon Sep 17 00:00:00 2001 From: davidovski Date: Wed, 15 Jun 2022 20:02:02 +0100 Subject: added deps for qemu --- repo/ceph/11-s3_expiration_header.patch | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 repo/ceph/11-s3_expiration_header.patch (limited to 'repo/ceph/11-s3_expiration_header.patch') diff --git a/repo/ceph/11-s3_expiration_header.patch b/repo/ceph/11-s3_expiration_header.patch new file mode 100644 index 0000000..ac12a83 --- /dev/null +++ b/repo/ceph/11-s3_expiration_header.patch @@ -0,0 +1,30 @@ +Patch by Robin Mueller + +Fix musl date handling + +--- a/src/rgw/rgw_lc.cc 2021-09-16 16:27:19.000000000 +0200 ++++ b/src/rgw/rgw_lc.cc 2021-10-01 09:17:06.996639952 +0200 +@@ -2238,8 +2238,21 @@ + // Fri, 23 Dec 2012 00:00:00 GMT + char exp_buf[100]; + time_t exp = ceph::real_clock::to_time_t(*expiration_date); +- if (std::strftime(exp_buf, sizeof(exp_buf), +- "%a, %d %b %Y %T %Z", std::gmtime(&exp))) { ++ std::size_t len = std::strftime(exp_buf, sizeof(exp_buf), "%a, %d %b %Y %T %Z", std::gmtime(&exp)); ++ ++ if (len) { ++ int position = 0; ++ while (exp_buf[position] != 'U' && len - position > 3) ++ position++; ++ ++ if (len - position == 3) { ++ char substr[4]; ++ memcpy(substr, &exp_buf[position], 4); ++ ++ if (strcmp(substr, "UTC") == 0) ++ memcpy(&exp_buf[position], "GMT", 3); ++ } ++ + hdr = fmt::format("expiry-date=\"{0}\", rule-id=\"{1}\"", exp_buf, + *rule_id); + } else { -- cgit v1.2.1