[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180530125118.25274-3-jack@suse.cz>
Date: Wed, 30 May 2018 14:51:10 +0200
From: Jan Kara <jack@...e.cz>
To: Ted Tso <tytso@....edu>
Cc: <linux-ext4@...r.kernel.org>, Jan Kara <jack@...e.cz>
Subject: [PATCH 02/10] ext2fs: Fix overflow when checking s_inodes_count in ext2fs_open()
The check whether s_inodes_count is correct in ext2fs_open() can
overflow and thus not catch all problematic cases. Fix the test.
Signed-off-by: Jan Kara <jack@...e.cz>
---
lib/ext2fs/openfs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/ext2fs/openfs.c b/lib/ext2fs/openfs.c
index 532e70f7f645..e9ad0cd1a2c6 100644
--- a/lib/ext2fs/openfs.c
+++ b/lib/ext2fs/openfs.c
@@ -386,7 +386,7 @@ errcode_t ext2fs_open2(const char *name, const char *io_options,
goto cleanup;
}
fs->group_desc_count = groups_cnt;
- if (fs->group_desc_count * EXT2_INODES_PER_GROUP(fs->super) !=
+ if ((__u64)fs->group_desc_count * EXT2_INODES_PER_GROUP(fs->super) !=
fs->super->s_inodes_count) {
retval = EXT2_ET_CORRUPT_SUPERBLOCK;
goto cleanup;
--
2.13.6
Powered by blists - more mailing lists