diff options
author | Matthias Beyer <matthias.beyer@atos.net> | 2021-01-25 13:41:35 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2021-01-25 13:52:57 +0100 |
commit | bbbd5944bfdc9640179dc172ec0dbe4e59b85c97 (patch) | |
tree | a2578a6fef77b90f19a36870f0f29674e521c041 /src | |
parent | 4e5a8ae7d469e723cc1806566442c59536343efc (diff) |
Implement sha256/sha512 support
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
Diffstat (limited to 'src')
-rw-r--r-- | src/package/source.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/package/source.rs b/src/package/source.rs index 69cd4c8..c99b701 100644 --- a/src/package/source.rs +++ b/src/package/source.rs @@ -15,6 +15,7 @@ use log::trace; use serde::Deserialize; use serde::Serialize; use url::Url; +use sha2::Digest; #[derive(Clone, Debug, Serialize, Deserialize, Getters)] pub struct Source { @@ -99,17 +100,15 @@ impl HashType { } HashType::Sha256 => { trace!("SHA256 hashing buffer"); - //let mut m = sha2::Sha256::new(); - //m.update(buffer); - //Ok(HashValue(String::from(m.finalize()))) - unimplemented!() + let mut m = sha2::Sha256::new(); + m.update(buffer); + Ok(HashValue(String::from_utf8(m.finalize()[..].to_vec())?)) } HashType::Sha512 => { trace!("SHA512 hashing buffer"); - //let mut m = sha2::Sha512::new(); - //m.update(buffer); - //Ok(HashValue(String::from(m.finalize()))) - unimplemented!() + let mut m = sha2::Sha512::new(); + m.update(buffer); + Ok(HashValue(String::from_utf8(m.finalize()[..].to_vec())?)) } } } |