diff --git a/src/modules/module_17200.c b/src/modules/module_17200.c index 1ada27f2c..d87b8fbd4 100644 --- a/src/modules/module_17200.c +++ b/src/modules/module_17200.c @@ -235,7 +235,9 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%x", &(pkzip->hash.crc32)); + u32 crc32 = 0; + sscanf (p, "%x", &crc32); + pkzip->hash.crc32 = crc32; p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; @@ -257,12 +259,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hash.checksum_from_crc)); + u16 checksum_from_crc = 0; + sscanf (p, "%hx", &checksum_from_crc); + pkzip->hash.checksum_from_crc = checksum_from_crc; + if (pkzip->version == 2) { p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hash.checksum_from_timestamp)); + u16 checksum_from_timestamp = 0; + sscanf (p, "%hx", &checksum_from_timestamp); + pkzip->hash.checksum_from_timestamp = checksum_from_timestamp; } else { diff --git a/src/modules/module_17210.c b/src/modules/module_17210.c index ce3236aa3..c02189b25 100644 --- a/src/modules/module_17210.c +++ b/src/modules/module_17210.c @@ -234,7 +234,9 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%x", & (pkzip->hash.crc32)); + u32 crc32 = 0; + sscanf (p, "%x", &crc32); + pkzip->hash.crc32 = crc32; p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; @@ -256,12 +258,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hash.checksum_from_crc)); + u16 checksum_from_crc = 0; + sscanf (p, "%hx", &checksum_from_crc); + pkzip->hash.checksum_from_crc = checksum_from_crc; + if (pkzip->version == 2) { p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hash.checksum_from_timestamp)); + u16 checksum_from_timestamp = 0; + sscanf (p, "%hx", &checksum_from_timestamp); + pkzip->hash.checksum_from_timestamp = checksum_from_timestamp; } else { diff --git a/src/modules/module_17220.c b/src/modules/module_17220.c index ec06d95c6..598cea038 100644 --- a/src/modules/module_17220.c +++ b/src/modules/module_17220.c @@ -236,7 +236,9 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%x", &(pkzip->hashes[i].crc32)); + u32 crc32 = 0; + sscanf (p, "%x", &crc32); + pkzip->hashes[i].crc32 = crc32; p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; @@ -258,12 +260,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_crc)); + u16 checksum_from_crc = 0; + sscanf (p, "%hx", &checksum_from_crc); + pkzip->hashes[i].checksum_from_crc = checksum_from_crc; + if (pkzip->version == 2) { p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_timestamp)); + u16 checksum_from_timestamp = 0; + sscanf (p, "%hx", &checksum_from_timestamp); + pkzip->hashes[i].checksum_from_timestamp = checksum_from_timestamp; } else { diff --git a/src/modules/module_17225.c b/src/modules/module_17225.c index 326bc12d0..9e538f72d 100644 --- a/src/modules/module_17225.c +++ b/src/modules/module_17225.c @@ -236,7 +236,9 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%x", &(pkzip->hashes[i].crc32)); + u32 crc32 = 0; + sscanf (p, "%x", &crc32); + pkzip->hashes[i].crc32 = crc32; p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; @@ -258,12 +260,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_crc)); + u16 checksum_from_crc = 0; + sscanf (p, "%hx", &checksum_from_crc); + pkzip->hashes[i].checksum_from_crc = checksum_from_crc; + if (pkzip->version == 2) { p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_timestamp)); + u16 checksum_from_timestamp = 0; + sscanf (p, "%hx", &checksum_from_timestamp); + pkzip->hashes[i].checksum_from_timestamp = checksum_from_timestamp; } else { diff --git a/src/modules/module_17230.c b/src/modules/module_17230.c index fadc785c2..e92837e15 100644 --- a/src/modules/module_17230.c +++ b/src/modules/module_17230.c @@ -237,7 +237,9 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%x", &(pkzip->hashes[i].crc32)); + u32 crc32 = 0; + sscanf (p, "%x", &crc32); + pkzip->hashes[i].crc32 = crc32; p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; @@ -259,12 +261,17 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_crc)); + u16 checksum_from_crc = 0; + sscanf (p, "%hx", &checksum_from_crc); + pkzip->hashes[i].checksum_from_crc = checksum_from_crc; + if (pkzip->version == 2) { p = strtok (NULL, "*"); if (p == NULL) return PARSER_HASH_LENGTH; - sscanf (p, "%hx", &(pkzip->hashes[i].checksum_from_timestamp)); + u16 checksum_from_timestamp = 0; + sscanf (p, "%hx", &checksum_from_timestamp); + pkzip->hashes[i].checksum_from_timestamp = checksum_from_timestamp; } else {