aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/sqfs/read_super.c5
-rw-r--r--lib/sqfs/super.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/lib/sqfs/read_super.c b/lib/sqfs/read_super.c
index 8b3f019..919e720 100644
--- a/lib/sqfs/read_super.c
+++ b/lib/sqfs/read_super.c
@@ -54,7 +54,10 @@ int sqfs_super_read(sqfs_super_t *super, sqfs_file_t *file)
if ((temp.block_size - 1) & temp.block_size)
return SQFS_ERROR_SUPER_BLOCK_SIZE;
- if (temp.block_size < 4096 || temp.block_size > (1 << 20))
+ if (temp.block_size < SQFS_MIN_BLOCK_SIZE)
+ return SQFS_ERROR_SUPER_BLOCK_SIZE;
+
+ if (temp.block_size > SQFS_MAX_BLOCK_SIZE)
return SQFS_ERROR_SUPER_BLOCK_SIZE;
if (temp.block_log < 12 || temp.block_log > 20)
diff --git a/lib/sqfs/super.c b/lib/sqfs/super.c
index 0257453..470c06a 100644
--- a/lib/sqfs/super.c
+++ b/lib/sqfs/super.c
@@ -20,7 +20,10 @@ int sqfs_super_init(sqfs_super_t *super, size_t block_size, sqfs_u32 mtime,
if (block_size & (block_size - 1))
return SQFS_ERROR_SUPER_BLOCK_SIZE;
- if (block_size < 4096 || block_size > (1 << 20))
+ if (block_size < SQFS_MIN_BLOCK_SIZE)
+ return SQFS_ERROR_SUPER_BLOCK_SIZE;
+
+ if (block_size > SQFS_MAX_BLOCK_SIZE)
return SQFS_ERROR_SUPER_BLOCK_SIZE;
memset(super, 0, sizeof(*super));