mirror of
https://github.com/jht5945/buildj.git
synced 2025-12-30 02:40:03 +08:00
update calc_file_*
This commit is contained in:
@@ -46,10 +46,10 @@ pub fn verify_file_integrity(integrity: &str, file_name: &str) -> XResult<bool>
|
|||||||
Some(index) => {
|
Some(index) => {
|
||||||
let digest_hex = &integrity[index+1..];
|
let digest_hex = &integrity[index+1..];
|
||||||
let calc_digest_hex = match &integrity[0..index] {
|
let calc_digest_hex = match &integrity[0..index] {
|
||||||
"sha256:hex" => calc_file_sha256(file_name)?,
|
"sha256:hex" => calc_file_digest(&mut Sha256::new(), "SHA256", file_name)?,
|
||||||
"sha512:hex" => calc_file_sha512(file_name)?,
|
"sha512:hex" => calc_file_digest(&mut Sha512::new(), "SHA512", file_name)?,
|
||||||
"sha1:hex" => calc_file_sha1(file_name)?,
|
"sha1:hex" => calc_file_digest(&mut Sha1::new(), "SHA1", file_name)?,
|
||||||
"md5:hex" => calc_file_md5(file_name)?,
|
"md5:hex" => calc_file_digest(&mut Md5::new(), "MD5", file_name)?,
|
||||||
_ => return Err(new_box_error(&format!("Not supported integrigty: {}", integrity))),
|
_ => return Err(new_box_error(&format!("Not supported integrigty: {}", integrity))),
|
||||||
};
|
};
|
||||||
let integrity_verify_result = digest_hex == calc_digest_hex.as_str();
|
let integrity_verify_result = digest_hex == calc_digest_hex.as_str();
|
||||||
@@ -67,26 +67,6 @@ pub fn calc_sha256(d: &[u8]) -> String {
|
|||||||
sha256.result_str()
|
sha256.result_str()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn calc_file_md5(file_name: &str) -> XResult<String> {
|
|
||||||
let mut digest = Md5::new();
|
|
||||||
calc_file_digest(&mut digest, "MD5", file_name)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn calc_file_sha1(file_name: &str) -> XResult<String> {
|
|
||||||
let mut digest = Sha1::new();
|
|
||||||
calc_file_digest(&mut digest, "SHA1", file_name)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn calc_file_sha256(file_name: &str) -> XResult<String> {
|
|
||||||
let mut digest = Sha256::new();
|
|
||||||
calc_file_digest(&mut digest, "SHA256", file_name)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn calc_file_sha512(file_name: &str) -> XResult<String> {
|
|
||||||
let mut digest = Sha512::new();
|
|
||||||
calc_file_digest(&mut digest, "SHA512", file_name)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn calc_file_digest(digest: &mut Digest, digest_alg: &str, file_name: &str) -> XResult<String> {
|
pub fn calc_file_digest(digest: &mut Digest, digest_alg: &str, file_name: &str) -> XResult<String> {
|
||||||
let mut buf: [u8; DEFAULT_BUF_SIZE] = [0u8; DEFAULT_BUF_SIZE];
|
let mut buf: [u8; DEFAULT_BUF_SIZE] = [0u8; DEFAULT_BUF_SIZE];
|
||||||
let mut f = File::open(file_name)?;
|
let mut f = File::open(file_name)?;
|
||||||
|
|||||||
Reference in New Issue
Block a user