aboutsummaryrefslogtreecommitdiff
path: root/src/api/k2v
diff options
context:
space:
mode:
authorAlex Auvolat <lx@deuxfleurs.fr>2025-02-16 16:44:34 +0100
committerAlex Auvolat <lx@deuxfleurs.fr>2025-02-16 17:25:55 +0100
commitcee7560fc1c3e885dc80dfee233211f54ac9db7d (patch)
treeee80161116770dcd18305aa23222b9ca2c02ce7c /src/api/k2v
parent2f0c5ca220d73b6c621f21816b666f939839dd49 (diff)
downloadgarage-cee7560fc1c3e885dc80dfee233211f54ac9db7d.tar.gz
garage-cee7560fc1c3e885dc80dfee233211f54ac9db7d.zip
api: refactor: move checksum algorithms to common
Diffstat (limited to 'src/api/k2v')
-rw-r--r--src/api/k2v/error.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/api/k2v/error.rs b/src/api/k2v/error.rs
index 3cd0e6f7..b7ca5aa4 100644
--- a/src/api/k2v/error.rs
+++ b/src/api/k2v/error.rs
@@ -23,6 +23,10 @@ pub enum Error {
#[error(display = "Authorization header malformed, unexpected scope: {}", _0)]
AuthorizationHeaderMalformed(String),
+ /// The provided digest (checksum) value was invalid
+ #[error(display = "Invalid digest: {}", _0)]
+ InvalidDigest(String),
+
/// The object requested don't exists
#[error(display = "Key not found")]
NoSuchKey,
@@ -54,6 +58,7 @@ impl From<SignatureError> for Error {
Self::AuthorizationHeaderMalformed(c)
}
SignatureError::InvalidUtf8Str(i) => Self::InvalidUtf8Str(i),
+ SignatureError::InvalidDigest(d) => Self::InvalidDigest(d),
}
}
}
@@ -71,6 +76,7 @@ impl Error {
Error::InvalidBase64(_) => "InvalidBase64",
Error::InvalidUtf8Str(_) => "InvalidUtf8String",
Error::InvalidCausalityToken => "CausalityToken",
+ Error::InvalidDigest(_) => "InvalidDigest",
}
}
}
@@ -85,6 +91,7 @@ impl ApiError for Error {
Error::AuthorizationHeaderMalformed(_)
| Error::InvalidBase64(_)
| Error::InvalidUtf8Str(_)
+ | Error::InvalidDigest(_)
| Error::InvalidCausalityToken => StatusCode::BAD_REQUEST,
}
}