This commit is contained in:
2020-04-18 23:29:34 +08:00
parent b99f69126b
commit df1ea56d6e

View File

@@ -55,24 +55,21 @@ fn main() -> XResult<()> {
return Ok(());
}
let the_algo = options.algorithm.to_uppercase();
let the_algo: &str = &options.algorithm.to_uppercase();
if options.file_name_list.is_empty() {
let boxed_digest = get_digest_by_algorithm(the_algo.as_str(), &options);
match boxed_digest {
match get_digest_by_algorithm(the_algo, &options) {
Some(mut digest) => println!("{} - ({})", calc_digest_stdin(&mut *digest)?, the_algo),
None => match the_algo.as_str() {
None => match the_algo {
"SM3" => println!("{} - ({})", hex::encode(Sm3Hash::new(&read_full_stdin()?).get_hash()), the_algo),
_ => print_message(MessageType::ERROR, &format!("Unknown algorithm: {}", options.algorithm)),
},
};
} else {
for f in &options.file_name_list {
let the_fn = f.as_str();
let boxed_digest = get_digest_by_algorithm(the_algo.as_str(), &options);
match boxed_digest {
Some(mut digest) => println!("{} - {} ({})", calc_file_digest(&mut *digest, the_fn)?, the_fn, the_algo),
None => match the_algo.as_str() {
"SM3" => println!("{} - {} ({})", hex::encode(Sm3Hash::new(&read_file_full(the_fn)?).get_hash()), the_fn, the_algo),
for file in &options.file_name_list {
match get_digest_by_algorithm(the_algo, &options) {
Some(mut digest) => println!("{} - {} ({})", calc_file_digest(&mut *digest, file)?, file, the_algo),
None => match the_algo {
"SM3" => println!("{} - {} ({})", hex::encode(Sm3Hash::new(&read_file_full(file)?).get_hash()), file, the_algo),
_ => {
print_message(MessageType::ERROR, &format!("Unknown algorithm: {}", options.algorithm));
return Ok(());