summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatthias Beyer <matthias.beyer@atos.net>2021-01-25 13:41:35 +0100
committerMatthias Beyer <mail@beyermatthias.de>2021-01-25 13:52:57 +0100
commitbbbd5944bfdc9640179dc172ec0dbe4e59b85c97 (patch)
treea2578a6fef77b90f19a36870f0f29674e521c041 /src
parent4e5a8ae7d469e723cc1806566442c59536343efc (diff)
Implement sha256/sha512 support
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
Diffstat (limited to 'src')
-rw-r--r--src/package/source.rs15
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())?))
}
}
}