LRZIP (Long Range ZIP) is a file compression program designed to
do particularly well on very large files containing long distance
redundancy. The larger the file and the more memory you have, the better
the compression advantage this will provide. A variety of compression
options allow optimizing for size and speed.
From Ruben Llorente (porting at use.startmail com) who is also taking
maintainership, thanks!
some tweaks/suggestions by me and sthen@, ok sthen@
The fix for CVE-2022-1271 doesn't work with pdksh: an apostrophe in
a comment trips up the lexer and all uses of xzgrep result in the same
/usr/local/bin/xzgrep[221]: no closing quote
Work around this by spelling out "don't" as "do not". This also fixes
the regress tests.
ok naddy (maintainer)
In zipgrep, prevent arbitrary-file-write vulnerability if an archive
member name contains shell wild cards that expand to an existing
pathname with an exploit pattern.
ok sthen@ tb@
ISO reader: fix possible heap buffer overflow in read_children()
RAR reader: fix heap-use-after-free in RAR (v4) filter code
RAR reader: fix null-dereference in RAR (v4) filter code
RAR reader: fix heap-use-after-free in run_filters()
ok naddy
DESCR:
libdeflate is a library for fast, whole-buffer DEFLATE-based compression and
decompression.
With help from sthen@.
"looks ok to me" landry@, OK sthen@
New features:
* tar: new option "--no-read-sparse"
* tar: threads support for zstd
* RAR reader: filter support
* RAR5 reader: self-extracting archive support
* ZIP reader: zstd decompression support
ENODATA from /usr/include/c++/v1/errno.h is only defined with base-clang
(I didn't follow the header maze) and a few other ports already replace
ENOADATA with ENOENT or ENOATTR, so do the same except just pass it along as
flags to avoid further patching.
ENOENT is used in fuse-zip, ENOATTR is not, so pick the latter.
OK kmos
happy with these, and with the last update a new cmake file was added
while the directories were @comment'ed, so pkg_delete * complained
about the extra dir. ok bcallah@