From dafe3b01d7dfe5f314dea37c312beae20e017f4e Mon Sep 17 00:00:00 2001 From: Tolmachev Igor Date: Sun, 1 Sep 2024 20:15:08 +0300 Subject: Add test for InvalidSignature for struct CDR --- src/zip/driver.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/zip/driver.rs b/src/zip/driver.rs index 0502c85..b44c453 100644 --- a/src/zip/driver.rs +++ b/src/zip/driver.rs @@ -145,12 +145,10 @@ impl ArchiveRead for Zip { ); for i in 0..cd_records as usize { - let buf = cd_reader.read_arr::<46>()?; - - if buf[..4] != CDR_SIGNATURE { + if cd_reader.read_arr()? != CDR_SIGNATURE { return Err(ZipError::InvalidSignature("Cdr")); } - let cdr: Cdr = deserialize(&buf[4..46]).unwrap(); + let cdr: Cdr = deserialize(&cd_reader.read_arr::<42>()?).unwrap(); let bit_flag = BitFlag::new(cdr.bit_flag); let name = cd_reader.read_vec(cdr.name_len as usize)?; -- cgit v1.2.3