-m 11600: allow hashes with compressions different from LZMA1/LZMA2

pull/991/head
philsmd 7 years ago
parent df0c61bf79
commit b22b2012b8
No known key found for this signature in database
GPG Key ID: 4F25D016D9D6A8AF

@ -11198,13 +11198,9 @@ int seven_zip_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_
* verify some data
*/
if (data_type > 2)
if (data_type == 0x80) // 0x80 is a special case and means "truncated"
{
// 0x80 is special case and means "truncated"
if (data_type != 0x80) return (PARSER_SALT_VALUE);
// if 0x80 (truncated), we always should have a data_len of exactly 16
// we always should have a data_len of exactly 16 if the data was truncated
if (data_len != 16) return (PARSER_SALT_VALUE);
}
@ -13779,8 +13775,12 @@ void seven_zip_hook_func (hc_device_param_t *device_param, hashes_t *hashes, con
}
}
if (data_type == 0x80) // truncated
if (data_type > 2)
{
// This decompression is currently not supported
// this check implies also this case:
// if (data_type == 0x80) // truncated
// we can't do a full CRC check since data in this case is truncated
// could lead to a higher number of false positives in very rare cases

Loading…
Cancel
Save