diff --git a/http-signature-normalization-warp/src/digest/mod.rs b/http-signature-normalization-warp/src/digest/mod.rs index edb4308..155f4ab 100644 --- a/http-signature-normalization-warp/src/digest/mod.rs +++ b/http-signature-normalization-warp/src/digest/mod.rs @@ -35,7 +35,7 @@ pub enum ParseDigestError { #[error("Could not parse request body")] pub struct ParseBodyError; -pub fn verify_digest_bytes( +pub fn verify_bytes( verifier: impl DigestVerify + Clone + Send, ) -> impl Filter + Clone { parse_digest_header() @@ -52,26 +52,26 @@ pub fn verify_digest_bytes( }) } -pub fn verify_digest_json( +pub fn verify_json( verifier: impl DigestVerify + Clone + Send ) -> impl Filter + Clone where T: serde::de::DeserializeOwned, { - verify_digest_bytes(verifier).and_then(|bytes: Bytes| { + verify_bytes(verifier).and_then(|bytes: Bytes| { async move { serde_json::from_slice(&bytes).map_err(|_| warp::reject::custom(ParseBodyError)) } }) } -pub fn verify_digest_form( +pub fn verify_form( verifier: impl DigestVerify + Clone + Send, ) -> impl Filter + Clone where T: serde::de::DeserializeOwned, { - verify_digest_bytes(verifier).and_then(|bytes: Bytes| { + verify_bytes(verifier).and_then(|bytes: Bytes| { async move { serde_urlencoded::from_bytes(&bytes).map_err(|_| warp::reject::custom(ParseBodyError)) }