From 633ab26eefe1b037eaba82d9a3555eb712c82345 Mon Sep 17 00:00:00 2001 From: Emoly Liu Date: Fri, 14 Jul 2023 10:59:58 +1000 Subject: [PATCH] e2image: correct group descriptors size in ext2fs_image_super_read() In function ext2fs_image_super_read(), the size of block group descriptors should be (fs->blocksize * fs->desc_blocks), but not (fs->blocksize * fs->group_desc_count). Signed-off-by: Emoly Liu Reviewed-by: Andreas Dilger Link: https://lore.kernel.org/r/20230714005958.442487-1-dongyangli@ddn.com Signed-off-by: Theodore Ts'o --- lib/ext2fs/imager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ext2fs/imager.c b/lib/ext2fs/imager.c index 23290a6..16b0977 100644 --- a/lib/ext2fs/imager.c +++ b/lib/ext2fs/imager.c @@ -299,7 +299,7 @@ errcode_t ext2fs_image_super_read(ext2_filsys fs, int fd, ssize_t actual, size; errcode_t retval; - size = (ssize_t)fs->blocksize * (fs->group_desc_count + 1); + size = (ssize_t)fs->blocksize * (fs->desc_blocks + 1); buf = malloc(size); if (!buf) return ENOMEM; @@ -323,7 +323,7 @@ errcode_t ext2fs_image_super_read(ext2_filsys fs, int fd, memcpy(fs->super, buf, SUPERBLOCK_SIZE); memcpy(fs->group_desc, buf + fs->blocksize, - (ssize_t)fs->blocksize * fs->group_desc_count); + (ssize_t)fs->blocksize * fs->desc_blocks); retval = 0; -- 1.8.3.1