feat: update dependencies
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
use std::fs;
|
||||
use std::fs::File;
|
||||
use std::io::Read;
|
||||
|
||||
@@ -8,6 +9,16 @@ use crate::digest::{sha256, sha256_bytes};
|
||||
|
||||
pub fn get_sha256_digest_or_hash(sub_arg_matches: &ArgMatches) -> XResult<Vec<u8>> {
|
||||
if let Some(file) = sub_arg_matches.value_of("file") {
|
||||
let metadata = opt_result!(fs::metadata(file), "Read file: {} metadata filed: {}", file);
|
||||
if !metadata.is_file() {
|
||||
return simple_error!("Not a file: {}", file);
|
||||
}
|
||||
if metadata.len() > 1024 * 1024 * 1024 {
|
||||
return simple_error!("File: {} too large", file);
|
||||
}
|
||||
if metadata.len() > 100 * 1024 * 1024 {
|
||||
warning!("File: {} is a large file, size: {} byte(s)", file, metadata.len());
|
||||
}
|
||||
let mut f = opt_result!(File::open(file), "Open file: {} failed: {}", file);
|
||||
let mut content = vec![];
|
||||
opt_result!(f.read_to_end(&mut content), "Read file: {} failed: {}", file);
|
||||
|
||||
Reference in New Issue
Block a user