diff options
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())?)) } } } |