Squashfs: fix mount time sanity check for corrupted superblock

A Squashfs filesystem containing nothing but an empty directory,
although unusual and ultimately pointless, is still valid.

The directory_table >= next_table sanity check rejects these
filesystems as invalid because the directory_table is empty and
equal to next_table.

Signed-off-by: Phillip Lougher <phillip@squashfs.org.uk>
This commit is contained in:
Phillip Lougher 2012-01-02 17:47:14 +00:00
parent d7fbd89338
commit cc37f75a9f

View File

@ -290,7 +290,7 @@ static int squashfs_fill_super(struct super_block *sb, void *data, int silent)
check_directory_table:
/* Sanity check directory_table */
if (msblk->directory_table >= next_table) {
if (msblk->directory_table > next_table) {
err = -EINVAL;
goto failed_mount;
}