forked from Imagelibrary/rtems
dosfs: Ensure valid data cluster count
This commit is contained in:
@@ -652,12 +652,17 @@ fat_init_volume_info(fat_fs_info_t *fs_info, const char *device)
|
|||||||
vol->mask = FAT_FAT16_MASK;
|
vol->mask = FAT_FAT16_MASK;
|
||||||
vol->eoc_val = FAT_FAT16_EOC;
|
vol->eoc_val = FAT_FAT16_EOC;
|
||||||
}
|
}
|
||||||
else
|
else if ( vol->data_cls < FAT_FAT32_MASK - 1 )
|
||||||
{
|
{
|
||||||
vol->type = FAT_FAT32;
|
vol->type = FAT_FAT32;
|
||||||
vol->mask = FAT_FAT32_MASK;
|
vol->mask = FAT_FAT32_MASK;
|
||||||
vol->eoc_val = FAT_FAT32_EOC;
|
vol->eoc_val = FAT_FAT32_EOC;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
close(vol->fd);
|
||||||
|
rtems_set_errno_and_return_minus_one( EINVAL );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vol->type == FAT_FAT32)
|
if (vol->type == FAT_FAT32)
|
||||||
|
|||||||
Reference in New Issue
Block a user