mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
fat: don't allow to mount if the FAT length == 0
commit b1b65750b8db67834482f758fc385bfa7560d228 upstream. If FAT length == 0, the image doesn't have any data. And it can be the cause of overlapping the root dir and FAT entries. Also Windows treats it as invalid format. Reported-by: [email protected] Signed-off-by: OGAWA Hirofumi <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Cc: Marco Elver <[email protected]> Cc: Dmitry Vyukov <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Linus Torvalds <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
parent
c49a17f1f1
commit
e0544273b7
1 changed files with 6 additions and 0 deletions
|
|
@ -1519,6 +1519,12 @@ static int fat_read_bpb(struct super_block *sb, struct fat_boot_sector *b,
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (bpb->fat_fat_length == 0 && bpb->fat32_length == 0) {
|
||||
if (!silent)
|
||||
fat_msg(sb, KERN_ERR, "bogus number of FAT sectors");
|
||||
goto out;
|
||||
}
|
||||
|
||||
error = 0;
|
||||
|
||||
out:
|
||||
|
|
|
|||
Loading…
Reference in a new issue