aboutsummaryrefslogtreecommitdiff
path: root/src/api/signature
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2024-03-07 12:46:15 +0100
committerAlex Auvolat <alex@adnab.me>2024-03-07 13:42:01 +0100
commiteab2b81be2a81422b829e7ef167de7b284695c28 (patch)
treed51c5e5b4b7f17522f702d2f31bab54213da8e05 /src/api/signature
parent3168bb34a0082480660e945f7390a5ecab26c665 (diff)
downloadgarage-eab2b81be2a81422b829e7ef167de7b284695c28.tar.gz
garage-eab2b81be2a81422b829e7ef167de7b284695c28.zip
[unicode-headers] allow utf-8 in headers + add test for object metadata
Diffstat (limited to 'src/api/signature')
-rw-r--r--src/api/signature/payload.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/api/signature/payload.rs b/src/api/signature/payload.rs
index d72736bb..d6ff62f0 100644
--- a/src/api/signature/payload.rs
+++ b/src/api/signature/payload.rs
@@ -331,8 +331,8 @@ pub fn canonical_request(
.map(|name| {
let value = headers
.get(name)
- .ok_or_bad_request(format!("signed header `{}` is not present", name))?
- .to_str()?;
+ .ok_or_bad_request(format!("signed header `{}` is not present", name))?;
+ let value = std::str::from_utf8(value.as_bytes())?;
Ok(format!("{}:{}", name.as_str(), value.trim()))
})
.collect::<Result<Vec<String>, Error>>()?