From 4f86b507371f78a261cebe64bb62646dc52b16e3 Mon Sep 17 00:00:00 2001 From: David Senk Date: Tue, 19 Aug 2025 00:07:13 -0400 Subject: [PATCH] expose crc32 type in return --- src/hashes.rs | 4 ++-- src/hashes/crc32.rs | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/hashes.rs b/src/hashes.rs index d77b5c8..4466cd3 100644 --- a/src/hashes.rs +++ b/src/hashes.rs @@ -38,7 +38,7 @@ fn bits512_default() -> BITS512 { #[derive(Debug, PartialEq)] pub enum HashReturn { - CRC32(BITS32), + CRC32(BITS32, crc32::CRC32TYPE), SHA256(BITS256), SHA3_256(BITS256), BLAKE256(BITS256), @@ -52,7 +52,7 @@ pub enum HashReturn { impl HashReturn { pub fn into_bytes(self) -> Arc<[u8]> { match self { - HashReturn::CRC32(inner) => Arc::new(inner.to_be_bytes()), + HashReturn::CRC32(inner, _) => Arc::new(inner.to_be_bytes()), HashReturn::SHA256(inner) => Arc::new(inner), HashReturn::SHA3_256(inner) => Arc::new(inner), HashReturn::BLAKE256(inner) => Arc::new(inner), diff --git a/src/hashes/crc32.rs b/src/hashes/crc32.rs index 75977c1..ea49a2b 100644 --- a/src/hashes/crc32.rs +++ b/src/hashes/crc32.rs @@ -1,6 +1,7 @@ use super::*; use crc::Table; +#[derive(Debug, Copy, Clone, Eq, PartialEq)] pub enum CRC32TYPE { CKSUM, XFER, @@ -53,7 +54,7 @@ impl Hasher for CRC32 { } fn complete(self) -> HashReturn { - HashReturn::CRC32(self.digester.finalize()) + HashReturn::CRC32(self.digester.finalize(), self.crc32type) } }