diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-06-15 15:27:47 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-06-15 15:28:11 +0200 |
commit | 5d609f7d539d8e277972c0337630b375f55d81c4 (patch) | |
tree | d2720244a1566305516c57ef76f7a550c5430e0b | |
parent | 868843fbf76dd67e804bc8a02121f5b56c560621 (diff) |
Move super block version check to sqfs_super_read
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-rw-r--r-- | lib/sqfs/read_super.c | 10 | ||||
-rw-r--r-- | unpack/rdsquashfs.c | 10 |
2 files changed, 10 insertions, 10 deletions
diff --git a/lib/sqfs/read_super.c b/lib/sqfs/read_super.c index 22dd822..3b41fbd 100644 --- a/lib/sqfs/read_super.c +++ b/lib/sqfs/read_super.c @@ -54,6 +54,16 @@ int sqfs_super_read(sqfs_super_t *super, int fd) return -1; } + if ((temp.version_major != SQFS_VERSION_MAJOR) || + (temp.version_minor != SQFS_VERSION_MINOR)) { + fprintf(stderr, + "The squashfs image uses squashfs version %d.%d\n" + "This tool currently only supports version %d.%d.\n", + temp.version_major, temp.version_minor, + SQFS_VERSION_MAJOR, SQFS_VERSION_MINOR); + return -1; + } + if ((temp.block_size - 1) & temp.block_size) { fputs("Block size in image is not a power of 2!\n", stderr); return -1; diff --git a/unpack/rdsquashfs.c b/unpack/rdsquashfs.c index 125a841..fcfc9c9 100644 --- a/unpack/rdsquashfs.c +++ b/unpack/rdsquashfs.c @@ -56,16 +56,6 @@ int main(int argc, char **argv) if (sqfs_super_read(&super, sqfsfd)) goto out_fd; - if ((super.version_major != SQFS_VERSION_MAJOR) || - (super.version_minor != SQFS_VERSION_MINOR)) { - fprintf(stderr, - "The image uses squashfs version %d.%d\n" - "We currently only supports version %d.%d (sorry).\n", - super.version_major, super.version_minor, - SQFS_VERSION_MAJOR, SQFS_VERSION_MINOR); - goto out_fd; - } - if (!compressor_exists(super.compression_id)) { fputs("Image uses a compressor that has not been built in\n", stderr); |