aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmoly Liu <emoly@whamcloud.com>2023-07-14 10:59:58 +1000
committerTheodore Ts'o <tytso@mit.edu>2024-02-08 10:47:08 -0500
commit633ab26eefe1b037eaba82d9a3555eb712c82345 (patch)
treefe515d99a65ed6ba6f2c3cfbc400fa95c260fa1d
parent1ac0061609c69cc9fe01bd116915632c2bc7c497 (diff)
downloade2fsprogs-633ab26eefe1b037eaba82d9a3555eb712c82345.tar.gz
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 <emoly@whamcloud.com> Reviewed-by: Andreas Dilger <adilger@dilger.ca> Link: https://lore.kernel.org/r/20230714005958.442487-1-dongyangli@ddn.com Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r--lib/ext2fs/imager.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/ext2fs/imager.c b/lib/ext2fs/imager.c
index 23290a6a2..16b09770c 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;