diff --git a/tsk/fs/exfatfs_dent.c b/tsk/fs/exfatfs_dent.c index 6d48d8e3ee6ff6ba156dc8eac57547103f32a609..714d88a21dc1a6aa8c34a96b1452f331508be3cc 100755 --- a/tsk/fs/exfatfs_dent.c +++ b/tsk/fs/exfatfs_dent.c @@ -47,7 +47,7 @@ typedef struct { uint8_t expected_name_length_utf16_chars; /* Name length (in characters) as reported by the file stream dentry */ uint8_t current_file_name_length_utf16_chars; /* Number of UTF16 name characters read in so far */ uint8_t file_name_utf16[(EXFATFS_MAX_FILE_NAME_LENGTH_UTF16_CHARS + 1) * 2]; /* The UTF16 characters read in so far*/ - uint8_t actual_name_length_utf8_bytes; /* Length of the UTF8 version of the name (stored in fs_name) */ + size_t actual_name_length_utf8_bytes; /* Length of the UTF8 version of the name (stored in fs_name) */ TSK_FS_NAME *fs_name; TSK_FS_DIR *fs_dir; } EXFATFS_FS_NAME_INFO; @@ -257,7 +257,7 @@ static void exfats_parse_file_name_dentry(EXFATFS_FS_NAME_INFO *a_name_info, FATFS_DENTRY *a_dentry, TSK_INUM_T a_inum) { EXFATFS_FILE_NAME_DIR_ENTRY *dentry = (EXFATFS_FILE_NAME_DIR_ENTRY*)a_dentry; - size_t num_utf16_chars_to_copy = 0; + uint8_t num_utf16_chars_to_copy = 0; assert(a_name_info != NULL); assert(a_name_info->fatfs != NULL); @@ -373,7 +373,7 @@ exfats_parse_vol_label_dentry(EXFATFS_FS_NAME_INFO *a_name_info, FATFS_DENTRY *a a_name_info->actual_name_length_utf8_bytes = strlen(a_name_info->fs_name->name); tag_length = strlen(tag); - if ((size_t)a_name_info->actual_name_length_utf8_bytes + tag_length < + if (a_name_info->actual_name_length_utf8_bytes + tag_length < FATFS_MAXNAMLEN_UTF8) { strcat(a_name_info->fs_name->name, tag); } diff --git a/tsk/fs/ext2fs.c b/tsk/fs/ext2fs.c index 2e800f769b13af9912fec2acff0d59dc5ce33723..ca13753e07e0ee7e7f07a9506179091009f3903a 100644 --- a/tsk/fs/ext2fs.c +++ b/tsk/fs/ext2fs.c @@ -115,7 +115,7 @@ static uint8_t /* * Sanity check */ - if (grp_num < 0 || grp_num >= ext2fs->groups_count) { + if (grp_num >= ext2fs->groups_count) { tsk_error_reset(); tsk_error_set_errno(TSK_ERR_FS_ARG); tsk_error_set_errstr @@ -239,39 +239,11 @@ static uint8_t * @gdp: pointer to group descriptor to calculate checksum for * returns the checksum value */ - -//Temporarily removing CRC16 code until non-GPL version implemented -//static uint16_t -//ext4_group_desc_csum(ext2fs_sb *ext4_sb, uint32_t block_group, -// struct ext4fs_gd *gdp) -//{ -// uint16_t crc = 0; -// if (*ext4_sb->s_feature_ro_compat & EXT2FS_FEATURE_RO_COMPAT_GDT_CSUM) -// { -// int offset = offsetof(struct ext4fs_gd, bg_checksum); -// uint32_t le_group = tsk_getu32(TSK_LIT_ENDIAN, &block_group); -// crc = crc16(~0, ext4_sb->s_uuid, sizeof(ext4_sb->s_uuid)); -// crc = crc16(crc, (uint8_t *)&le_group, sizeof(le_group)); -// crc = crc16(crc, (uint8_t *)gdp, offset); -// offset += sizeof(gdp->bg_checksum); /* skip checksum */ -// /* for checksum of struct ext4_group_desc do the rest...*/ -// if ((*ext4_sb->s_feature_incompat & -// EXT2FS_FEATURE_INCOMPAT_64BIT) && -// offset < *ext4_sb->s_desc_size) -// { -// crc = crc16(crc, (uint8_t *)gdp + offset, *ext4_sb->s_desc_size - offset); -// } -// } -// -// return crc; -//} - -static cm_t CRC16_CTX; - static uint16_t ext4_group_desc_csum(ext2fs_sb * ext4_sb, uint32_t block_group, struct ext4fs_gd *gdp) { + cm_t CRC16_CTX; CRC16_CTX.cm_width = 16; CRC16_CTX.cm_poly = 0x8005L; CRC16_CTX.cm_init = 0xFFFFL; @@ -702,8 +674,8 @@ ext2fs_dinode_copy(EXT2FS_INFO * ext2fs, TSK_FS_META * fs_meta, tsk_getu32(fs->endian, dino_buf->i_crtime_extra) >> 2; } else { - fs_meta->mtime_nano = fs_meta->atime_nano = fs_meta->ctime_nano = - fs_meta->crtime = 0; + fs_meta->mtime_nano = fs_meta->atime_nano = fs_meta->ctime_nano = 0; + fs_meta->crtime = 0; } fs_meta->time2.ext2.dtime_nano = 0; fs_meta->seq = 0; @@ -1914,7 +1886,7 @@ ext2fs_fsstat(TSK_FS_INFO * fs, FILE * hFile) else tsk_fprintf(hFile, "Unmounted Improperly\n"); - if (sb->s_last_mounted != '\0') + if (sb->s_last_mounted[0] != '\0') tsk_fprintf(hFile, "Last mounted on: %s\n", sb->s_last_mounted); tsk_fprintf(hFile, "\nSource OS: "); diff --git a/tsk/fs/fatxxfs.c b/tsk/fs/fatxxfs.c index 3b8794b88e40115e7120b8ad193f860eb309bb43..154e87c209d4daca83876ae355c948b26e1300e2 100755 --- a/tsk/fs/fatxxfs.c +++ b/tsk/fs/fatxxfs.c @@ -58,7 +58,6 @@ static uint8_t fatxxfs_fsstat(TSK_FS_INFO * fs, FILE * hFile) { unsigned int i; - int a; TSK_DADDR_T next, snext, sstart, send; FATFS_INFO *fatfs = (FATFS_INFO *) fs; FATXXFS_SB *sb = (FATXXFS_SB*)fatfs->boot_sector_buffer; @@ -136,7 +135,7 @@ fatxxfs_fsstat(TSK_FS_INFO * fs, FILE * hFile) sb->a.f16.vol_lab[8], sb->a.f16.vol_lab[9], sb->a.f16.vol_lab[10]); - if ((vol_label_dentry) && (vol_label_dentry->name)) { + if ((vol_label_dentry) && (vol_label_dentry->name[0])) { tsk_fprintf(hFile, "Volume Label (Root Directory): %c%c%c%c%c%c%c%c%c%c%c\n", vol_label_dentry->name[0], vol_label_dentry->name[1], vol_label_dentry->name[2], vol_label_dentry->name[3], @@ -176,7 +175,7 @@ fatxxfs_fsstat(TSK_FS_INFO * fs, FILE * hFile) sb->a.f32.vol_lab[8], sb->a.f32.vol_lab[9], sb->a.f32.vol_lab[10]); - if ((vol_label_dentry) && (vol_label_dentry->name)) { + if ((vol_label_dentry) && (vol_label_dentry->name[0])) { tsk_fprintf(hFile, "Volume Label (Root Directory): %c%c%c%c%c%c%c%c%c%c%c\n", vol_label_dentry->name[0], vol_label_dentry->name[1], vol_label_dentry->name[2], vol_label_dentry->name[3], @@ -358,6 +357,7 @@ fatxxfs_fsstat(TSK_FS_INFO * fs, FILE * hFile) for (i = 2; i <= fatfs->lastclust; i++) { TSK_DADDR_T entry; TSK_DADDR_T sect; + unsigned int a; /* Get the FAT table entry */ if (fatfs_getFAT(fatfs, i, &entry))