Sync from SUSE:SLFO:Main squashfs revision 76f931d20ae850f33cac864f13f457f7
This commit is contained in:
commit
988e27fca9
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
BIN
4.6.1.tar.gz
(Stored with Git LFS)
Normal file
BIN
4.6.1.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
50
squashfs-64k.patch
Normal file
50
squashfs-64k.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
Index: squashfs-tools-4.6.1/squashfs-tools/mksquashfs.c
|
||||||
|
===================================================================
|
||||||
|
--- squashfs-tools-4.6.1.orig/squashfs-tools/mksquashfs.c
|
||||||
|
+++ squashfs-tools-4.6.1/squashfs-tools/mksquashfs.c
|
||||||
|
@@ -6378,7 +6378,7 @@ static void print_options(FILE *stream,
|
||||||
|
fprintf(stream, "file on\n\t\t\tencountering them. This option makes ");
|
||||||
|
fprintf(stream, "Mksquashfs ignore\n\t\t\tthe zero filled blocks\n");
|
||||||
|
fprintf(stream, "\nExpert options (these may make the filesystem unmountable):\n");
|
||||||
|
- fprintf(stream, "-nopad\t\t\tdo not pad filesystem to a multiple of 4K\n");
|
||||||
|
+ fprintf(stream, "-nopad\t\t\tdo not pad filesystem to a multiple of 64K\n");
|
||||||
|
fprintf(stream, "-offset <offset>\tskip <offset> bytes at the beginning of ");
|
||||||
|
fprintf(stream, "FILESYSTEM.\n\t\t\tOptionally a suffix of K, M or G can be given ");
|
||||||
|
fprintf(stream, "to specify\n\t\t\tKbytes, Mbytes or Gbytes respectively.\n");
|
||||||
|
@@ -6606,7 +6606,7 @@ static void print_sqfstar_options(FILE *
|
||||||
|
fprintf(stream, "memory for caches. Default 25%%\n");
|
||||||
|
fprintf(stream, "-mem-default\t\tprint default memory usage in Mbytes\n");
|
||||||
|
fprintf(stream, "\nExpert options (these may make the filesystem unmountable):\n");
|
||||||
|
- fprintf(stream, "-nopad\t\t\tdo not pad filesystem to a multiple of 4K\n");
|
||||||
|
+ fprintf(stream, "-nopad\t\t\tdo not pad filesystem to a multiple of 64K\n");
|
||||||
|
fprintf(stream, "-offset <offset>\tskip <offset> bytes at the beginning of ");
|
||||||
|
fprintf(stream, "FILESYSTEM.\n\t\t\tOptionally a suffix of K, M or G can be given ");
|
||||||
|
fprintf(stream, "to specify\n\t\t\tKbytes, Mbytes or Gbytes respectively.\n");
|
||||||
|
@@ -7605,9 +7605,9 @@ print_sqfstar_compressor_options:
|
||||||
|
set_progressbar_state(FALSE);
|
||||||
|
write_filesystem_tables(&sBlk);
|
||||||
|
|
||||||
|
- if(!nopad && (i = bytes & (4096 - 1))) {
|
||||||
|
- char temp[4096] = {0};
|
||||||
|
- write_destination(fd, bytes, 4096 - i, temp);
|
||||||
|
+ if(!nopad && (i = bytes & (65536 - 1))) {
|
||||||
|
+ char temp[65536] = {0};
|
||||||
|
+ write_destination(fd, bytes, 65536 - i, temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
res = close(fd);
|
||||||
|
@@ -8877,10 +8877,10 @@ print_compressor_options:
|
||||||
|
|
||||||
|
set_progressbar_state(FALSE);
|
||||||
|
write_filesystem_tables(&sBlk);
|
||||||
|
-
|
||||||
|
- if(!nopad && (i = bytes & (4096 - 1))) {
|
||||||
|
- char temp[4096] = {0};
|
||||||
|
- write_destination(fd, bytes, 4096 - i, temp);
|
||||||
|
+
|
||||||
|
+ if(!nopad && (i = bytes & (65536 - 1))) {
|
||||||
|
+ char temp[65536] = {0};
|
||||||
|
+ write_destination(fd, bytes, 65536 - i, temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
res = close(fd);
|
20
squashfs-thread-limit
Normal file
20
squashfs-thread-limit
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Index: squashfs-tools-4.6.1/squashfs-tools/mksquashfs.c
|
||||||
|
===================================================================
|
||||||
|
--- squashfs-tools-4.6.1.orig/squashfs-tools/mksquashfs.c
|
||||||
|
+++ squashfs-tools-4.6.1/squashfs-tools/mksquashfs.c
|
||||||
|
@@ -5276,6 +5276,15 @@ static void initialise_threads(int readq
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
+ /* Every frag_thrd will:
|
||||||
|
+ * * occupy a slot in the process table (_SC_CHILD_MAX), and will
|
||||||
|
+ * * allocate SQUASHFS_FILE_MAX_SIZE (currently 1MiB), which is
|
||||||
|
+ * accounted towards the per-process datasize limit, and will
|
||||||
|
+ * * open 1 file descriptor (_SC_OPEN_MAX).
|
||||||
|
+ * Before we hit any of those limits on big irons, limit
|
||||||
|
+ * ourselves to an impressive but sane arbitrary maximum.
|
||||||
|
+ */
|
||||||
|
+ if (processors > 64) processors = 64;
|
||||||
|
|
||||||
|
if(multiply_overflow(processors, 3) ||
|
||||||
|
multiply_overflow(processors * 3, sizeof(pthread_t)))
|
490
squashfs.changes
Normal file
490
squashfs.changes
Normal file
@ -0,0 +1,490 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 3 13:48:44 UTC 2023 - Torsten Duwe <duwe@suse.com>
|
||||||
|
|
||||||
|
- For reference: previous updates fixed
|
||||||
|
* CVE-2021-40153 (bsc#1189936)
|
||||||
|
* CVE-2015-4645, CVE-2015-4646 (bsc#935380)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Apr 15 09:55:32 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 4.6.1:
|
||||||
|
* Race condition which can cause corruption of the "fragment
|
||||||
|
table" fixed. This is a regression introduced in August 2022,
|
||||||
|
and it has been seen when tailend packing is used (-tailends option).
|
||||||
|
* Fix build failure when the tools are being built without
|
||||||
|
extended attribute (XATTRs) support.
|
||||||
|
* Fix XATTR error message when an unrecognised prefix is
|
||||||
|
found
|
||||||
|
* Fix incorrect free of pointer when an unrecognised XATTR
|
||||||
|
prefix is found.
|
||||||
|
* Major improvements in extended attribute handling,
|
||||||
|
pseudo file handling, and miscellaneous new options and
|
||||||
|
improvements
|
||||||
|
* Extended attribute handling improved in Mksquashfs and
|
||||||
|
Sqfstar
|
||||||
|
* New Pseudo file xattr definition to add extended
|
||||||
|
attributes to files.
|
||||||
|
* New xattrs-add Action to add extended attributes to files
|
||||||
|
* Extended attribute handling improved in Unsquashfs
|
||||||
|
* Other major improvements
|
||||||
|
* Unsquashfs can now output Pseudo files to standard out.
|
||||||
|
* Mksquashfs can now input Pseudo files from standard in.
|
||||||
|
* Squashfs filesystems can now be converted (different
|
||||||
|
block size compression etc) without unpacking to an
|
||||||
|
intermediate filesystem or mounting, by piping the output of
|
||||||
|
Unsquashfs to Mksquashfs.
|
||||||
|
* Pseudo files are now supported by Sqfstar.
|
||||||
|
* "Non-anchored" excludes are now supported by Unsquashfs.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 14 12:33:23 UTC 2022 - Torsten Duwe <duwe@suse.com>
|
||||||
|
|
||||||
|
- Do not repeat openSUSE / SLE version tests
|
||||||
|
|
||||||
|
- Actually format and package the man pages
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun May 8 04:11:28 UTC 2022 - Cristian Rodríguez <crrodriguez@opensuse.org>
|
||||||
|
|
||||||
|
- set LZMA_XZ_SUPPORT=1 so you can (un)squash -comp lzma images
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Mar 20 19:51:00 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 4.5.1 (bsc#1190531, CVE-2021-41072):
|
||||||
|
* This release adds Manpages for Mksquashfs(1), Unsquashfs(1),
|
||||||
|
Sqfstar(1) and Sqfscat(1).
|
||||||
|
* The -help text output from the utilities has been improved
|
||||||
|
and extended as well (but the Manpages are now more
|
||||||
|
comprehensive).
|
||||||
|
* CVE-2021-41072 which is a writing outside of destination
|
||||||
|
exploit, has been fixed.
|
||||||
|
* The number of hard-links in the filesystem is now also
|
||||||
|
displayed by Mksquashfs in the output summary.
|
||||||
|
* The number of hard-links written by Unsquashfs is now
|
||||||
|
also displayed in the output summary.
|
||||||
|
* Unsquashfs will now write to a pre-existing destination
|
||||||
|
directory, rather than aborting.
|
||||||
|
* Unsquashfs now allows "." to used as the destination, to
|
||||||
|
extract to the current directory.
|
||||||
|
* The Unsquashfs progress bar now tracks empty files and
|
||||||
|
hardlinks, in addition to data blocks.
|
||||||
|
* -no-hardlinks option has been implemented for Sqfstar.
|
||||||
|
* More sanity checking for "corrupted" filesystems, including
|
||||||
|
checks for multiply linked directories and directory loops.
|
||||||
|
* Options that may cause filesystems to be unmountable have
|
||||||
|
been moved into a new "experts" category in the Mksquashfs
|
||||||
|
help text (and Manpage).
|
||||||
|
* Maximum cpiostyle filename limited to PATH_MAX. This
|
||||||
|
prevents attempts to overflow the stack, or cause system
|
||||||
|
calls to fail with a too long pathname.
|
||||||
|
* Don't always use "max open file limit" when calculating
|
||||||
|
length of queues, as a very large file limit can cause
|
||||||
|
Unsquashfs to abort. Instead use the smaller of max open
|
||||||
|
file limit and cache size.
|
||||||
|
* Fix Mksquashfs silently ignoring Pseudo file definitions
|
||||||
|
when appending.
|
||||||
|
* Don't abort if no XATTR support has been built in, and
|
||||||
|
there's XATTRs in the filesystem. This is a regression
|
||||||
|
introduced in 2019 in Version 4.4.
|
||||||
|
* Fix duplicate check when the last file block is sparse.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Dec 11 23:03:19 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 4.5:
|
||||||
|
* Mksquashfs now supports "Actions".
|
||||||
|
* New sqfstar command which will create a Squashfs image from a tar archive.
|
||||||
|
* Tar style handling of source pathnames in Mksquashfs.
|
||||||
|
* Cpio style handling of source pathnames in Mksquashfs.
|
||||||
|
* New option to throttle the amount of CPU and I/O.
|
||||||
|
* Mksquashfs now allows no source directory to be specified.
|
||||||
|
* New Pseudo file "R" definition which allows a Regular file
|
||||||
|
o be created with data stored within the Pseudo file.
|
||||||
|
* Symbolic links are now followed in extract files
|
||||||
|
* Unsquashfs now supports "exclude" files.
|
||||||
|
* Max depth traversal option added.
|
||||||
|
* Unsquashfs can now output a "Pseudo file" representing the
|
||||||
|
input Squashfs filesystem.
|
||||||
|
* New -one-file-system option in Mksquashfs.
|
||||||
|
* New -no-hardlinks option in Mksquashfs.
|
||||||
|
* Exit code in Unsquashfs changed to distinguish between
|
||||||
|
non-fatal errors (exit 2), and fatal errors (exit 1).
|
||||||
|
* Xattr id count added in Unsquashfs "-stat" output.
|
||||||
|
* Unsquashfs "write outside directory" exploit fixed.
|
||||||
|
* Error handling in Unsquashfs writer thread fixed.
|
||||||
|
* Fix failure to truncate destination if appending aborted.
|
||||||
|
* Prevent Mksquashfs reading the destination file.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 1 17:16:30 UTC 2020 - Björn Voigt <bjoernv@arcor.de>
|
||||||
|
|
||||||
|
- enabled ZSTD compression support for openSUSE >= 15.1
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 31 11:41:23 UTC 2020 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
- Add -fcommon in order to fix boo#1160294.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 21 13:45:56 UTC 2019 - Philipp Seiler <p.seiler@linuxmail.org>
|
||||||
|
|
||||||
|
- Version 4.4 - 2019-08-29:
|
||||||
|
* Reproducible builds, new compressors,
|
||||||
|
CVE fixes, security hardening and new options
|
||||||
|
for Mksquashfs/Unsquashfs.
|
||||||
|
|
||||||
|
- Overall improvements:
|
||||||
|
* Mksquashfs now generates reproducible images by default.
|
||||||
|
* Mkfs time and file timestamps can also be specified.
|
||||||
|
* Support for the Zstandard (ZSTD) compression algorithm.
|
||||||
|
* CVE-2015-4645 and CVE-2015-4646 have been fixed.
|
||||||
|
|
||||||
|
- Mksquashfs improvements and major bug fixes:
|
||||||
|
* Pseudo files now support symbolic links.
|
||||||
|
* New -mkfs-time option.
|
||||||
|
* New -all-time option.
|
||||||
|
* New -root-mode option.
|
||||||
|
* New -quiet option.
|
||||||
|
* New -noId option.
|
||||||
|
* New -offset option.
|
||||||
|
* Update lz4 wrapper to use new functions introduced
|
||||||
|
in 1.7.0.
|
||||||
|
* Bug fix, don't allow "/" pseudo filenames.
|
||||||
|
* Bug fix, allow quoting of pseudo files, to
|
||||||
|
better handle filenames with spaces.
|
||||||
|
* Fix compilation with glibc 2.25+.
|
||||||
|
|
||||||
|
- Unsquashfs improvements and major bug fixes:
|
||||||
|
* CVE-2015-4645 and CVE-2015-4646 have been fixed.
|
||||||
|
* Unsquashfs has been further hardened against corrupted
|
||||||
|
filestems.
|
||||||
|
* Unsquashfs is now more strict about error handling.
|
||||||
|
* New -ignore-errors option.
|
||||||
|
* New -strict-errors option.
|
||||||
|
* New -lln[umeric] option.
|
||||||
|
* New -lc option.
|
||||||
|
* New -llc option.
|
||||||
|
* New -mkfs-time option.
|
||||||
|
* New -UTC option.
|
||||||
|
* New -offset option.
|
||||||
|
* New -quiet option.
|
||||||
|
* Update lz4 wrapper to use new functions introduced
|
||||||
|
in 1.7.0.
|
||||||
|
* Bug fix, fatal and non-fatal errors now set the exit
|
||||||
|
code to 1.
|
||||||
|
* Bug fix, fix time setting for symlinks.
|
||||||
|
* Bug fix, try to set sticky-bit when running as a
|
||||||
|
user process.
|
||||||
|
* Fix compilation with glibc 2.25+.
|
||||||
|
|
||||||
|
- build changes:
|
||||||
|
* re-created patches to fit squashfs 4.4
|
||||||
|
* removed 0001-mksquashfs-fix-rare-race-in-fragment-waiting-in-file.patch
|
||||||
|
(new version includes this change)
|
||||||
|
* removed 0002-Fix-2GB-limit-of-the-is_fragment-.-function.patch
|
||||||
|
(new version includes this change)
|
||||||
|
* removed 0003-Add-offset-function-to-skip-n-bytes.patch
|
||||||
|
(new version includes this change)
|
||||||
|
* removed sysmacros.patch
|
||||||
|
(new version includes this change)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 5 20:21:30 UTC 2019 - Philipp <p.seiler@linuxmail.org>
|
||||||
|
|
||||||
|
- Add -offset function to skip n bytes at the beginning of the squashfs…
|
||||||
|
https://github.com/plougher/squashfs-tools/commit/5a498ad24dcfeac9f3d747e894f22901f3ac10
|
||||||
|
(0003-Add-offset-function-to-skip-n-bytes.patch)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 24 17:41:17 UTC 2019 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
- Disable LTO (boo#1133284).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 21 00:00:00 CET 2019 - dsterba@suse.cz
|
||||||
|
|
||||||
|
- Use | instead of / that can be part of -L or -I options.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 20 15:51:14 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Use / as sed command delimiter. Comma can actually show up in
|
||||||
|
optflags (think -Wl,…), which then breaks the sed command line
|
||||||
|
parsing.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 1 14:36:31 UTC 2018 - schwab@suse.de
|
||||||
|
|
||||||
|
- sysmacros.patch: Include <sys/sysmacros.h> for major/minor/makedev
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 16 15:18:06 UTC 2016 - duwe@suse.com
|
||||||
|
|
||||||
|
- Machines with 1024 processors or more reach the limit of maximum
|
||||||
|
file descriptors (bsc#984136). Other limits apply that may be
|
||||||
|
hit for no good reason. Simply limit the number of used threads
|
||||||
|
to an arbitrary number, squashfs-thread-limit.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 21 16:45:45 UTC 2016 - dmueller@suse.com
|
||||||
|
|
||||||
|
- fix build for SLE12 and older
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 5 08:29:56 UTC 2015 - seife+obs@b1-systems.com
|
||||||
|
|
||||||
|
- add patches to fix eventual file corruption (boo#953723)
|
||||||
|
0001-mksquashfs-fix-rare-race-in-fragment-waiting-in-file.patch
|
||||||
|
0002-Fix-2GB-limit-of-the-is_fragment-.-function.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 1 08:23:28 UTC 2015 - 9@cirno.systems
|
||||||
|
|
||||||
|
- Enable LZ4 support
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 6 08:31:28 UTC 2015 - mpluskal@suse.com
|
||||||
|
|
||||||
|
- Use url for source
|
||||||
|
- Cleanup spec file with spec-cleaner
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 23 18:58:00 UTC 2014 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
- Since version 4.3, squasfs does not require attr-devel
|
||||||
|
but uses glibc instead.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 16 13:09:05 UTC 2014 - duwe@suse.com
|
||||||
|
|
||||||
|
- update to 4.3:
|
||||||
|
- unsquashfs: add checks for corrupted data in opendir functions
|
||||||
|
- unsquashfs: completely empty filesystems incorrectly generate an error
|
||||||
|
- unsquashfs: fix open file limit
|
||||||
|
- mksquashfs: Use linked list to store directory entries rather
|
||||||
|
- mksquashfs: Remove qsort and add a bottom up linked list merge sort
|
||||||
|
- mksquashfs: optimise lookup_inode2() for dirs
|
||||||
|
- pseudo: fix handling of modify pseudo files
|
||||||
|
- pseudo: fix handling of directory pseudo files
|
||||||
|
- xattr: Fix ERROR() so that it is synchronised with the progress bar
|
||||||
|
- mksquashfs/sort: Fix INFO() so that it is synced with the progress bar
|
||||||
|
- mksquashfs: Add -progress to force progress bar when using -info
|
||||||
|
- error.h: consolidate the various error macros into one header file
|
||||||
|
- mksquashfs: fix stack overflow in write_fragment_table()
|
||||||
|
- mksquashfs: move list allocation from off the stack
|
||||||
|
- unsquashfs: fix oversight in directory permission setting
|
||||||
|
- mksquashfs: dynamically allocate recovery_file
|
||||||
|
- mksquashfs: dynamically allocate buffer in subpathname()
|
||||||
|
- mksquashfs: dynamically allocate buffer in pathname()
|
||||||
|
- unsquashfs: fix CVE-2012-4024
|
||||||
|
- unsquashfs: fix CVE-2012-4025
|
||||||
|
- mksquashfs: fix potential stack overflow in get_component()
|
||||||
|
- mksquashfs: add parse_number() helper for numeric command line options
|
||||||
|
- mksquasfs: check return value of fstat() in reader_read_file()
|
||||||
|
- mksquashfs: dynamically allocate filename in old_add_exclude()
|
||||||
|
- unsquashfs: dynamically allocate pathname in dir_scan()
|
||||||
|
- unsquashfs: dynamically allocate pathname in pre_scan()
|
||||||
|
- sort: dynamically allocate filename in add_sort_list()
|
||||||
|
- mksquashfs: fix dir_scan() exit if lstat of source directory fails
|
||||||
|
- pseudo: fix memory leak in read_pseudo_def() if exec_file() fails
|
||||||
|
- pseudo: dynamically allocate path in dump_pseudo()
|
||||||
|
- mksquashfs: dynamically allocate path in display_path2()
|
||||||
|
- mksquashfs: dynamically allocate b_buffer in getbase()
|
||||||
|
- pseudo: fix potential stack overflow in get_component()
|
||||||
|
- pseudo: avoid buffer overflow in read_pseudo_def() using sscanf()
|
||||||
|
- pseudo: dynamically allocate filename in exec_file()
|
||||||
|
- pseudo: avoid buffer overflow in read_sort_file() using fscanf()
|
||||||
|
- sort: tighten up sort file parsing
|
||||||
|
- unsquashfs: fix name under-allocation in process_extract_files()
|
||||||
|
- unsquashfs: avoid buffer overflow in print_filename() using sprintf()
|
||||||
|
- Fix some limits in the file parsing routines
|
||||||
|
- pseudo: Rewrite pseudo file processing
|
||||||
|
- read_fs: fix small memory leaks in read_filesystem()
|
||||||
|
- mksquashfs: fix fclose leak in reader_read_file() on I/O error
|
||||||
|
- mksquashfs: fix frag struct leak in write_file_{process|blocks|frag}
|
||||||
|
- unsquashfs_xattr: fix memory leak in write_xattr()
|
||||||
|
- read_xattrs: fix xattr free in get_xattr() in error path
|
||||||
|
- unsquashfs: add -user-xattrs option to only extract user.xxx xattrs
|
||||||
|
- unsquashfs: add code to only print "not superuser" error message once
|
||||||
|
- unsquashfs: check for integer overflow in user input
|
||||||
|
- mksquashfs: check for integer overflow in user input
|
||||||
|
- mksquashfs: fix "new" variable leak in dir_scan1()
|
||||||
|
- read_fs: prevent buffer {over|under}flow in read_block() with
|
||||||
|
corrupted filesystems
|
||||||
|
- read_fs: check metadata blocks are expected size in scan_inode_table()
|
||||||
|
- read_fs: check the root inode block is found in scan_inode_table()
|
||||||
|
- read_fs: Further harden scan_inode_table() against corrupted
|
||||||
|
filesystems
|
||||||
|
- unsquashfs: prevent buffer {over|under}flow in read_block() with
|
||||||
|
corrupted filesystems
|
||||||
|
- read_xattrs: harden xattr data reading against corrupted filesystems
|
||||||
|
- unsquash-[23]: harden frag table reading against corrupted filesystems
|
||||||
|
- unsquash-4.c: harden uid/gid & frag table reading against corruption
|
||||||
|
- unsquashfs: harden inode/directory table reading against corruption
|
||||||
|
- mksquashfs: improve out of space in output filesystem handling
|
||||||
|
- mksquashfs: flag lseek error in writer as probable out of space
|
||||||
|
- mksquashfs: flag lseek error in write_destination as probable out of
|
||||||
|
space
|
||||||
|
- mksquashfs: print file being squashed when ^\ (SIGQUIT) typed
|
||||||
|
- mksquashfs: make EXIT_MKSQUASHFS() etc restore via new restore thread
|
||||||
|
- mksquashfs: fix recursive restore failure check
|
||||||
|
- info: dump queue and cache status if ^\ hit twice within one second
|
||||||
|
- mksquashfs: fix rare race condition in "locked fragment" queueing
|
||||||
|
- lz4: add experimental support for lz4 compression
|
||||||
|
- lz4: add support for lz4 "high compression"
|
||||||
|
- lzo_wrapper: new implementation with compression options
|
||||||
|
- gzip_wrapper: add compression options
|
||||||
|
- mksquashfs: redo -comp <compressor> parsing
|
||||||
|
- mksquashfs: display compressor options when -X option isn't recognised
|
||||||
|
- mksquashfs: add -Xhelp option
|
||||||
|
- mksquashfs/unsquashfs: fix mtime signedness
|
||||||
|
- Mksquashfs: optimise duplicate checking when appending
|
||||||
|
- Mksquashfs: introduce additional per CPU fragment process threads
|
||||||
|
- Mksquashfs: significantly optimise fragment duplicate checking
|
||||||
|
- read_fs: scan_inode_table(), fix memory leak on filesystem corruption
|
||||||
|
- pseudo: add_pseudo(), fix use of freed variable
|
||||||
|
- mksquashfs/unsquashfs: exclude/extract/pseudo files, fix handling of
|
||||||
|
leaf name
|
||||||
|
- mksquashfs: rewrite default queue size so it's based on physical mem
|
||||||
|
- mksquashfs: add a new -mem <mbytes> option
|
||||||
|
- mksquashfs: fix limit on the number of dynamic pseudo files
|
||||||
|
- mksquashfs: make -mem take a normal byte value, optionally with a
|
||||||
|
K, M or G
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat May 26 08:45:57 UTC 2012 - jengelh@inai.de
|
||||||
|
|
||||||
|
- Remove redundant tags/sections from specfile
|
||||||
|
- Parallel build with %_smp_mflags
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jan 22 17:01:12 CET 2012 - dmueller@suse.de
|
||||||
|
|
||||||
|
- enable support for xz and lzo (kernel has support already)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 3 19:00:03 UTC 2011 - dvaleev@suse.com
|
||||||
|
|
||||||
|
- The ppc64 kernel uses a page size of 64kB but mksquashfs only
|
||||||
|
pads to a 4kB boundary. When we loopback mount a squashfs file
|
||||||
|
that isn't 64kB aligned and access the last sector of the
|
||||||
|
associated loopback device we see a stream of errors.
|
||||||
|
Disk partitioning tools seem to like accessing the last 512
|
||||||
|
bytes of partitions.
|
||||||
|
|
||||||
|
This should fix warnings seen during starting installation on
|
||||||
|
ppc64 and IA64
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 24 16:41:14 CEST 2011 - dimstar@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 4.2:
|
||||||
|
+ Filesystem improvements:
|
||||||
|
- Added XZ compression
|
||||||
|
- Added compression options support
|
||||||
|
+ Miscellaneous improvements/bug fixes:
|
||||||
|
- Add missing NO_XATTR filesystem flag to indicate no-xattrs
|
||||||
|
option was specified and no xattrs should be stored when
|
||||||
|
appending.
|
||||||
|
- Add suppport in Unquashfs -stat option for displaying
|
||||||
|
NO_XATTR flag.
|
||||||
|
- Remove checkdata entry from Unsquashfs -stat option if a 4.0
|
||||||
|
filesystem - checkdata is no longer supported.
|
||||||
|
- Fix appending bug when appending to an empty filesystem -
|
||||||
|
this would be incorrectly treated as an error.
|
||||||
|
- Use glibc sys/xattr.h include rather than using attr/xattr.h
|
||||||
|
which isn't present by default on some distributions.
|
||||||
|
- Unsquashfs, fix block calculation error with regular files
|
||||||
|
when file size is between 2^32-block_size+1 and 2^32-1.
|
||||||
|
- Unsquashfs, fix sparse file writing when holes are larger
|
||||||
|
than 2^31-1.
|
||||||
|
- Add external CFLAGS and LDFLAGS support to Makefile, and
|
||||||
|
allow build options to be specified on command line.
|
||||||
|
Also don't over-write passed in CFLAGS definition.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 2 18:41:08 UTC 2010 - coolo@novell.com
|
||||||
|
|
||||||
|
- update to 4.1
|
||||||
|
- support for lzo (>= 2.6.36) and lzma (not yet mainline)
|
||||||
|
- xattr support
|
||||||
|
- misc fixes for the tools
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 21 14:47:01 CEST 2009 - snwint@suse.de
|
||||||
|
|
||||||
|
- removed obsolete source file
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 17 12:49:44 CEST 2009 - snwint@suse.de
|
||||||
|
|
||||||
|
- update to squashfs 4.0 (unsquashfs actually works)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 25 16:27:55 CET 2009 - coolo@suse.de
|
||||||
|
|
||||||
|
- update to squashfs pre 4.0 to create squashfs that 2.6.29 can
|
||||||
|
actually read
|
||||||
|
- (there is no documentation in CVS)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 23 14:57:03 CEST 2007 - olh@suse.de
|
||||||
|
|
||||||
|
- move kernel driver to kernel-binary.rpm
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 16 14:06:32 CEST 2007 - cthiel@suse.de
|
||||||
|
|
||||||
|
- Supplements: filesystem(squashfs)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 6 01:36:49 CEST 2007 - ro@suse.de
|
||||||
|
|
||||||
|
- fix build with current kernel
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 4 22:09:34 CEST 2007 - lrupp@suse.de
|
||||||
|
|
||||||
|
- added module-init-tools to BuildRequires
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 29 16:21:12 CEST 2007 - rguenther@suse.de
|
||||||
|
|
||||||
|
- added zlib-devel BuildRequires.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 23 15:45:15 CET 2007 - ro@suse.de
|
||||||
|
|
||||||
|
- update to 3.2r2
|
||||||
|
- Kernel patches 2.6.19/2.6.20 have been updated to use
|
||||||
|
const structures and mutexes rather than older semaphores.
|
||||||
|
- Minor SMP bug fixes.
|
||||||
|
- Progress bar broken on x86-64. Fixed.
|
||||||
|
- update to 3.2
|
||||||
|
- Improvements:
|
||||||
|
- Squashfs filesystems can now be exported via NFS.
|
||||||
|
- Unsquashfs now supports 2.x filesystems.
|
||||||
|
- Mksquashfs now displays a progress bar.
|
||||||
|
- Squashfs kernel code has been hardened against accidently or
|
||||||
|
maliciously corrupted Squashfs filesystems.
|
||||||
|
- Bug fixes:
|
||||||
|
- Race condition occurring on S390 in readpage() fixed.
|
||||||
|
- Odd behaviour of MIPS memcpy in read_data() routine worked-around.
|
||||||
|
- Missing cache_flush in Squashfs symlink_readpage() added.
|
||||||
|
|
||||||
|
- update to 3.1r2
|
||||||
|
- A code optimisation after testing unfortunately
|
||||||
|
broke sorting in Mksquashfs. This has been fixed.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 21 16:54:16 CEST 2006 - ro@suse.de
|
||||||
|
|
||||||
|
- update to version 3.1 to fix build on 2.6.18
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu May 11 16:58:59 CEST 2006 - duwe@suse.de
|
||||||
|
|
||||||
|
- packaged current version for SuSE Linux.
|
||||||
|
|
69
squashfs.spec
Normal file
69
squashfs.spec
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
#
|
||||||
|
# spec file for package squashfs
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
Name: squashfs
|
||||||
|
Version: 4.6.1
|
||||||
|
Release: 0
|
||||||
|
Summary: A Read-Only File System with Efficient Compression
|
||||||
|
License: GPL-2.0-or-later
|
||||||
|
Group: System/Filesystems
|
||||||
|
URL: https://github.com/plougher/squashfs-tools
|
||||||
|
Source0: https://github.com/plougher/squashfs-tools/archive/refs/tags/%{version}.tar.gz
|
||||||
|
Patch0: squashfs-64k.patch
|
||||||
|
Patch1: squashfs-thread-limit
|
||||||
|
BuildRequires: help2man
|
||||||
|
BuildRequires: lzma-devel
|
||||||
|
BuildRequires: lzo-devel
|
||||||
|
BuildRequires: zlib-devel
|
||||||
|
Supplements: filesystem(squashfs)
|
||||||
|
%if %{?suse_version} > 1315
|
||||||
|
BuildRequires: liblz4-devel
|
||||||
|
%define _lz4_def LZ4_SUPPORT=1
|
||||||
|
%endif
|
||||||
|
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150100
|
||||||
|
BuildRequires: libzstd-devel
|
||||||
|
%define _zstd_def ZSTD_SUPPORT=1
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
This package contains the userland utilities to create and read
|
||||||
|
squashfs images.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n squashfs-tools-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
%define _lto_cflags %{nil}
|
||||||
|
sed -i -e "s|-O2|%{optflags}|" squashfs-tools/Makefile
|
||||||
|
make %{?_smp_mflags} -C squashfs-tools \
|
||||||
|
LZMA_XZ_SUPPORT=1 XZ_SUPPORT=1 LZO_SUPPORT=1 %{?_lz4_def} %{?_zstd_def}
|
||||||
|
|
||||||
|
%install
|
||||||
|
make -C squashfs-tools install \
|
||||||
|
INSTALL_PREFIX=%{buildroot}%{_prefix} \
|
||||||
|
INSTALL_MANPAGES_DIR=%{buildroot}%{_mandir}/man1
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYING
|
||||||
|
%doc README-%{version} ACKNOWLEDGEMENTS CHANGES USAGE-4.6
|
||||||
|
%{_bindir}/sqfs*
|
||||||
|
%{_bindir}/mksquashfs
|
||||||
|
%{_bindir}/unsquashfs
|
||||||
|
%{_mandir}/man1/*
|
||||||
|
|
||||||
|
%changelog
|
Loading…
Reference in New Issue
Block a user