]> wimlib.net Git - wimlib/log
wimlib
13 months agoDon't touch config.rpath in bootstrap script
Eric Biggers [Mon, 20 Mar 2023 03:59:17 +0000 (20:59 -0700)]
Don't touch config.rpath in bootstrap script

This has no purpose.

13 months agoUpdate some copyright years
Eric Biggers [Mon, 20 Mar 2023 03:59:17 +0000 (20:59 -0700)]
Update some copyright years

13 months agoConsistently use _WIN32 instead of __WIN32__
Eric Biggers [Mon, 20 Mar 2023 03:59:17 +0000 (20:59 -0700)]
Consistently use _WIN32 instead of __WIN32__

_WIN32 works with all compilers, while __WIN32__ is MinGW-specific.
This project used __WIN32__ in files that only support MinGW, and _WIN32
in other files such as the library header and example programs.  One
place even used WIN32.  Avoid this unnecessary complication by just
always using _WIN32.

13 months agoUse native Windows threads on Windows
Eric Biggers [Mon, 20 Mar 2023 03:59:16 +0000 (20:59 -0700)]
Use native Windows threads on Windows

This makes building wimlib for Windows easier, as it no longer depends
on winpthreads.

13 months agoExplicitly define _WIN32_WINNT
Eric Biggers [Mon, 20 Mar 2023 03:59:16 +0000 (20:59 -0700)]
Explicitly define _WIN32_WINNT

Explicitly define _WIN32_WINNT to correspond to the minimum Windows
version we are supporting (currently Windows Vista).

13 months agoRemove support for Windows XP
Eric Biggers [Mon, 20 Mar 2023 03:59:16 +0000 (20:59 -0700)]
Remove support for Windows XP

13 months agoUpdate NEWS
Eric Biggers [Sat, 18 Mar 2023 07:31:39 +0000 (00:31 -0700)]
Update NEWS

13 months agoAdd a configuration file for GitHub Actions
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Add a configuration file for GitHub Actions

13 months agoFix build with very latest MinGW
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Fix build with very latest MinGW

MinGW's winioctl.h has added the FSCTL_*_OVERLAY constants but not the
structs they use, so make sure to define the structs ourselves.

13 months agoSkip a test case on macOS
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Skip a test case on macOS

13 months agoMake the 'tree-cmp' program build on macOS
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Make the 'tree-cmp' program build on macOS

13 months agoFix 'MAX' redefined warning on macOS
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Fix 'MAX' redefined warning on macOS

13 months agoUpdate winpthreads in Windows binaries to 10.0.0
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Update winpthreads in Windows binaries to 10.0.0

13 months agoUpdate libxml in Windows binaries to 2.10.3
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Update libxml in Windows binaries to 2.10.3

13 months agoAdd a basic test for wimverify and the SHA-1 code
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Add a basic test for wimverify and the SHA-1 code

13 months agoSHA-1 rework
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
SHA-1 rework

First, add new SHA-1 implementations that use the x86 and ARM SHA-1
intrinsics, so that these can be taken advantage of in Windows builds.

Second, replace sha1-ssse3.asm with an easier-to-maintain implementation
using intrinsics, and build a copy of it with AVX+BMI2 enabled.

Finally, now that better SHA-1 implementations are included, support for
OpenSSL's SHA-1 is no longer very useful, so remove it.

I considered going in the other direction: removing all SHA-1 code and
relying completely on external libraries.  Some issues with that are:

- Statically linking OpenSSL into libwim.dll on Windows increases the
  binary size by over 4x, even when using "no-autoalginit".

- OpenSSL has deprecated its easy-to-use SHA-1 API in favor of the EVP
  API, which is harder to use (everything can fail) and slower.

- Windows CryptoAPI is Windows-only (duh) and also has a complex, slow
  API where every function can fail, so that's not great either.

- SHA-1 is considered insecure these days, so it may be unwise to count
  on its continued support in crypto libraries into the future.

So, let's just do it ourselves...

13 months agoAdd and use SHA1_HASH_STRING_LEN constant
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Add and use SHA1_HASH_STRING_LEN constant

13 months agoAdd unaligned access helpers for be32
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Add unaligned access helpers for be32

13 months agoRename sha1_buffer() to simply sha1()
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Rename sha1_buffer() to simply sha1()

13 months agoImprove runtime CPU feature detection
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Improve runtime CPU feature detection

- Make wimlib_global_init() do the CPU feature detection, so that it
  doesn't have to be done on-demand later.

- Add support for detecting the x86 SHA extensions.

- Add support for detecting ARMv8 SHA1 instructions on Linux, Windows,
  and macOS.  (64-bit only for now.)

- Allow disabling features via an environment variable for testing.

- Remove some unused functionality.

13 months agoCall wimlib_global_init() when creating compressors and decompressors
Eric Biggers [Sat, 18 Mar 2023 07:17:54 +0000 (00:17 -0700)]
Call wimlib_global_init() when creating compressors and decompressors

All nontrivial API functions are supposed to call wimlib_global_init().
wimlib_create_compressor() and wimlib_create_decompressor() did not.
Make them do so, so that CPU feature detection can be moved to
wimlib_global_init().

15 months agowimsplit: use uint64_t for part_size
Eric Biggers [Wed, 11 Jan 2023 06:56:14 +0000 (22:56 -0800)]
wimsplit: use uint64_t for part_size

Reported at https://wimlib.net/forums/viewtopic.php?t=640

15 months agoSuppress deprecation warnings for OpenSSL's SHA1_* functions
Eric Biggers [Wed, 11 Jan 2023 06:56:14 +0000 (22:56 -0800)]
Suppress deprecation warnings for OpenSSL's SHA1_* functions

19 months agov1.13.6 v1.13.6
Eric Biggers [Sun, 11 Sep 2022 17:34:12 +0000 (12:34 -0500)]
v1.13.6

19 months agotools/make-releases: use libdeflate-gzip instead of 7z
Eric Biggers [Sun, 11 Sep 2022 17:34:12 +0000 (12:34 -0500)]
tools/make-releases: use libdeflate-gzip instead of 7z

19 months agotools/afl-fuzz: add gitignore file
Eric Biggers [Sun, 11 Sep 2022 17:34:12 +0000 (12:34 -0500)]
tools/afl-fuzz: add gitignore file

19 months agotools/afl-fuzz: fix ctype calculation
Eric Biggers [Sun, 11 Sep 2022 17:34:12 +0000 (12:34 -0500)]
tools/afl-fuzz: fix ctype calculation

19 months agoMakefile.am: don't explicitly link to msvcrt
Eric Biggers [Sun, 11 Sep 2022 17:34:12 +0000 (12:34 -0500)]
Makefile.am: don't explicitly link to msvcrt

The latest MinGW versions don't want this, and it causes an error about
the lib not being found.

20 months agotools: add afl-fuzz files
Eric Biggers [Fri, 5 Aug 2022 05:23:23 +0000 (22:23 -0700)]
tools: add afl-fuzz files

20 months agowof.h: guard by __WIN32__
Eric Biggers [Fri, 5 Aug 2022 05:03:21 +0000 (22:03 -0700)]
wof.h: guard by __WIN32__

This is needed for the wlfuzz program to compile on non-Windows.

20 months agowimlib.h: remove duplicate 'the'
Eric Biggers [Sun, 31 Jul 2022 02:10:07 +0000 (19:10 -0700)]
wimlib.h: remove duplicate 'the'

20 months agoRemove some unnecessary configure options
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
Remove some unnecessary configure options

Remove support for the following options which aren't really useful and
probably aren't being used by anyone:

* --disable-assertions
* --disable-error-messages
* --disable-multithreaded-compression

20 months agoDon't bother with malloc function attribute
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
Don't bother with malloc function attribute

20 months agomatchfinder_common: sync with libdeflate
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
matchfinder_common: sync with libdeflate

20 months agocompress_common: sync with libdeflate
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
compress_common: sync with libdeflate

20 months agobt_matchfinder: sync with libdeflate
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
bt_matchfinder: sync with libdeflate

20 months agohc_matchfinder: sync with libdeflate
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
hc_matchfinder: sync with libdeflate

20 months agoUse MIT license instead of CC0
Eric Biggers [Sun, 31 Jul 2022 02:03:42 +0000 (19:03 -0700)]
Use MIT license instead of CC0

CC0 has continued to fall out of favor due to the patents clause
(https://lwn.net/ml/fedora-legal/CAC1cPGw1xScGAXo-0NRs92zFB7ptRxTt=oCYi0BxfZDfAgUtYQ@mail.gmail.com).
Years ago I released some source files in this project (not the whole
project) under CC0.  Use the MIT license for these files instead.

Note that this requires claiming copyright on the latest version of
these files.  Of course, previous versions of these files remain public
domain where legally recognized; this is *not* in any way an attempt to
"revoke" the public domain status of previous versions.

21 months agoReduce MAX_OPEN_FILES to 128 on macOS where the default limit is 256
Mathieu Schroeter [Mon, 11 Jul 2022 12:05:48 +0000 (14:05 +0200)]
Reduce MAX_OPEN_FILES to 128 on macOS where the default limit is 256

2 years agowimlib_iterate_dir_tree(): don't checksum unhashed blobs
Eric Biggers [Mon, 3 Jan 2022 20:33:20 +0000 (14:33 -0600)]
wimlib_iterate_dir_tree(): don't checksum unhashed blobs

wimlib_iterate_dir_tree() on a modified-but-not-committed image is very
slow because it checksums all unhashed blobs.  This was originally
implemented by commit 681faad85f73 ("wimlib_iterate_dir_tree(): checksum
unhashed blobs"), presumably to make the sha1_hash field always valid.
However, I can't remember a real use case for this.  The current
behavior is causing problems, so let's just revert it and update the
documentation accordingly.

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=572

2 years agowimsplit: don't print success message on failure
Eric Biggers [Mon, 3 Jan 2022 19:53:34 +0000 (13:53 -0600)]
wimsplit: don't print success message on failure

2 years agov1.13.5 v1.13.5
Eric Biggers [Sun, 19 Dec 2021 19:06:07 +0000 (13:06 -0600)]
v1.13.5

2 years agoUpdate libxml to 2.9.12 for Windows binaries
Eric Biggers [Sun, 19 Dec 2021 18:55:47 +0000 (12:55 -0600)]
Update libxml to 2.9.12 for Windows binaries

2 years agoexport_image.c: allow duplicate image names in source WIM
Eric Biggers [Tue, 23 Nov 2021 01:55:42 +0000 (17:55 -0800)]
export_image.c: allow duplicate image names in source WIM

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=568.  DISM can
create WIM files containing images with duplicate names, whereas wimlib
enforces unique image names in certain cases such as adding images,
exporting images, and changing image names.  This behavior generally
seems fine, but the "export" check is too strict: an export of "all"
images will fail if the source WIM contains duplicate names.

Fix this by making wimlib_export_image() allow duplicate image names in
the source WIM, provided that they don't collide with image names that
already exist in the destination WIM.

2 years agoconfigure.ac: fix trailing newline issue
Eric Biggers [Tue, 3 Aug 2021 04:53:42 +0000 (21:53 -0700)]
configure.ac: fix trailing newline issue

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=562.
m4_esyscmd() needs to be m4_esyscmd_s(), so that the version string
doesn't get a trailing newline.  It works for me either way, but that's
probably because in autoconf 2.70, AC_INIT started trimming extra
whitespace from its arguments (as per the release notes at
https://lists.gnu.org/archive/html/autotools-announce/2020-12/msg00001.html).
So presumably this fix is needed for older versions of autoconf.

2 years agoconfigure.ac: generate version number from git commit and tags
Eric Biggers [Sat, 10 Jul 2021 22:47:57 +0000 (17:47 -0500)]
configure.ac: generate version number from git commit and tags

This should hopefully make it less confusing when building from the git
repository.  Previously, when doing so the version number would always
be that of the last official release.

2 years agonasm.m4: use AS_MESSAGE_LOG_FD
Eric Biggers [Sat, 10 Jul 2021 22:51:26 +0000 (17:51 -0500)]
nasm.m4: use AS_MESSAGE_LOG_FD

Address the following warning when running autoreconf:

    configure.ac:191: warning: The macro `AC_FD_CC' is obsolete.
    configure.ac:191: You should run autoupdate.
    ./lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
    m4/nasm.m4:4: AC_PROG_NASM is expanded from...
    configure.ac:191: the top level

2 years agov1.13.5-BETA1
Eric Biggers [Sat, 10 Jul 2021 01:26:16 +0000 (20:26 -0500)]
v1.13.5-BETA1

2 years agoREADME.WINDOWS: clarify how to build master branch
Eric Biggers [Sat, 10 Jul 2021 00:56:49 +0000 (17:56 -0700)]
README.WINDOWS: clarify how to build master branch

2 years agoWarn rather than abort if SHA-1 is same but size is different
Eric Biggers [Mon, 5 Jul 2021 06:03:50 +0000 (23:03 -0700)]
Warn rather than abort if SHA-1 is same but size is different

Assertions should only be used for bugs in wimlib, but this scenario can
also happen if there is a SHA-1 collision, or if the SHA-1 hash provided
by the filesystem for a WIM-backed file on Windows is wrong.

2 years agotools/make-windows-release: ensure the headers in tools/windeps/ are used
Eric Biggers [Tue, 29 Jun 2021 07:42:11 +0000 (00:42 -0700)]
tools/make-windows-release: ensure the headers in tools/windeps/ are used

Avoid a build error due to the libxml2 headers not being found.

Previously it worked by chance due to the system headers being used.
This stopped working in Cygwin builds for some reason, though.

2 years agotools/make-windows-release: check existence of config.log before grepping it
Eric Biggers [Tue, 29 Jun 2021 07:42:11 +0000 (00:42 -0700)]
tools/make-windows-release: check existence of config.log before grepping it

Avoid a misleading log message.

2 years agowin32: update WOF ioctl definitions
Eric Biggers [Tue, 29 Jun 2021 07:42:11 +0000 (00:42 -0700)]
win32: update WOF ioctl definitions

Use the "official" Microsoft struct and field names, and only define
things when they aren't already defined (since some of them were
recently added to MinGW's winioctl.h, causing build errors).

2 years agowin32: only define FSCTL_SET_PERSISTENT_VOLUME_STATE if not yet defined
Eric Biggers [Tue, 29 Jun 2021 07:42:11 +0000 (00:42 -0700)]
win32: only define FSCTL_SET_PERSISTENT_VOLUME_STATE if not yet defined

The MinGW headers define this (and the related struct and constant) now,
which is causing a build error.

Also use CTL_CODE() rather than a raw number.

2 years agoREADME.WINDOWS: fix category of p7zip
Eric Biggers [Tue, 29 Jun 2021 07:42:11 +0000 (00:42 -0700)]
README.WINDOWS: fix category of p7zip

3 years agov1.13.4 v1.13.4
Eric Biggers [Mon, 19 Apr 2021 04:16:34 +0000 (21:16 -0700)]
v1.13.4

3 years agov1.13.4-BETA2
Eric Biggers [Wed, 7 Apr 2021 04:31:48 +0000 (21:31 -0700)]
v1.13.4-BETA2

3 years agoAdd support for a data recovery mode
Eric Biggers [Wed, 7 Apr 2021 04:31:48 +0000 (21:31 -0700)]
Add support for a data recovery mode

Add support for extracting file data even if it is corrupted (i.e. if
its hash doesn't match or some of its chunks can't be decompressed).

This isn't recommended for general use, but it could be useful for
recovering data from a corrupted WIM archive.

3 years agov1.13.4-BETA1
Eric Biggers [Fri, 2 Apr 2021 04:14:20 +0000 (21:14 -0700)]
v1.13.4-BETA1

3 years agoFix slow progress updating for wimsplit
Eric Biggers [Fri, 2 Apr 2021 04:07:53 +0000 (21:07 -0700)]
Fix slow progress updating for wimsplit

wimsplit only prints a progress message when starting each WIM part.
That could be very infrequently since each part could be gigabytes.

Fix it to update the progress regularly as data is written, like the
other wimlib-imagex commands do.

This required changing the library to report
WIMLIB_PROGRESS_MSG_WRITE_STREAMS messages from wimlib_split() and
include the completed compressed size in them.

Reported at https://www.reddit.com/r/pcmasterrace/comments/hagu4k/wimlibimagex_split_stuck_at_0

3 years agov1.13.3 v1.13.3
Eric Biggers [Tue, 27 Oct 2020 03:54:00 +0000 (20:54 -0700)]
v1.13.3

3 years agowin32_replacements.c: fix handle closing in win32_wglob()
Eric Biggers [Tue, 27 Oct 2020 03:17:02 +0000 (20:17 -0700)]
win32_replacements.c: fix handle closing in win32_wglob()

The handle returned by FindFirstFileW() needs to be closed by
FindClose(), not by CloseHandle().

This is a very old bug, which presumably wasn't noticed before because
ordinarily it just leaked the handle.  However, this bug caused a SEH
exception when wimlib was run under a debugger.

3 years agoCOPYING: clarify the license
Eric Biggers [Sun, 23 Aug 2020 19:37:12 +0000 (12:37 -0700)]
COPYING: clarify the license

Some of the language in COPYING is potentially unclear.  For example,
there is some ambiguity in when each license option of GPL and LGPL is
allowed.  Clarify the language.

Note, this commit isn't intended to actually change the license at all.
It just clarifies what I intended.

3 years agoConsistently use forums as bug report location
Eric Biggers [Fri, 5 Jun 2020 01:36:14 +0000 (18:36 -0700)]
Consistently use forums as bug report location

3 years agowin32_apply: relax bootloader compression blacklist
Eric Biggers [Fri, 5 Jun 2020 01:21:57 +0000 (18:21 -0700)]
win32_apply: relax bootloader compression blacklist

At some point the Windows bootloader started supporting all system
compression formats, not just XPRESS4K.

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=444

3 years agoREADME.WINDOWS: fix the Cygwin package list
Eric Biggers [Fri, 5 Jun 2020 00:49:40 +0000 (17:49 -0700)]
README.WINDOWS: fix the Cygwin package list

The "mingw64-i686-pkg-config" and "mingw64-x86_64-pkg-config" packages
have been replaced by just "pkg-config".

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=533#p1225

3 years agov1.13.3-BETA1
Eric Biggers [Tue, 2 Jun 2020 04:30:08 +0000 (21:30 -0700)]
v1.13.3-BETA1

3 years agowin32_capture: avoid unnecessary fallback to recursive scan
Eric Biggers [Tue, 2 Jun 2020 04:26:04 +0000 (21:26 -0700)]
win32_capture: avoid unnecessary fallback to recursive scan

When doing the fast MFT scan (via FSCTL_QUERY_FILE_LAYOUT) and we find a
directory that needs to fall back to the standard scan, we actually only
need to fall back for the directory itself -- not also its children.
Optimize things accordingly.

Reported at https://wimlib.net/forums/viewtopic.php?f=1&t=533

3 years agov1.13.2 v1.13.2
Eric Biggers [Sun, 24 May 2020 18:22:36 +0000 (11:22 -0700)]
v1.13.2

3 years agowimboot.c: avoid -Waddress-of-packed-member warning
Eric Biggers [Sun, 24 May 2020 18:22:36 +0000 (11:22 -0700)]
wimboot.c: avoid -Waddress-of-packed-member warning

3 years agoUpdate libxml to 2.9.10 for Windows binaries
Eric Biggers [Sun, 24 May 2020 18:22:36 +0000 (11:22 -0700)]
Update libxml to 2.9.10 for Windows binaries

3 years agoRemove obsolete Linux packaging files
Eric Biggers [Sun, 24 May 2020 18:22:36 +0000 (11:22 -0700)]
Remove obsolete Linux packaging files

There are now official Debian and Fedora packages for wimlib.  So the
in-tree packaging files are redundant.  Also I haven't tested them in a
long time, so there's a good chance they don't work properly anymore.

3 years agoUse memcpy() for unaligned accesses
Eric Biggers [Fri, 22 May 2020 05:35:29 +0000 (22:35 -0700)]
Use memcpy() for unaligned accesses

For unaligned memory accesses, with modern compilers memcpy() is
compiled just as efficiently as __attribute__((packed)).  This also
avoids using a nonstandard extension and potentially running into the
gcc 10 bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94994.

4 years agoFix some typos
Eric Biggers [Sun, 25 Aug 2019 00:38:43 +0000 (17:38 -0700)]
Fix some typos

4 years agoupdate_image.c: check malloc return value
Eric Biggers [Fri, 26 Jul 2019 05:11:33 +0000 (22:11 -0700)]
update_image.c: check malloc return value

4 years agoAvoid gcc warnings with -Waddress-of-packed-member
Eric Biggers [Fri, 26 Jul 2019 05:11:33 +0000 (22:11 -0700)]
Avoid gcc warnings with -Waddress-of-packed-member

- Remove unnecessary packed attributes.
- Access a packed structure directly rather than via a separate pointer.

4 years agomkwinpeimg: syslinux modules may be in /usr/share/syslinux
Jiri Slaby [Thu, 18 Jul 2019 06:22:33 +0000 (08:22 +0200)]
mkwinpeimg: syslinux modules may be in /usr/share/syslinux

On openSUSE...

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
4 years agov1.13.1 v1.13.1
Eric Biggers [Tue, 7 May 2019 02:29:00 +0000 (19:29 -0700)]
v1.13.1

5 years agov1.13.1-BETA1
Eric Biggers [Sun, 14 Apr 2019 06:21:42 +0000 (23:21 -0700)]
v1.13.1-BETA1

5 years agolcpit_matchfinder: fix limiting nice_match_len
Eric Biggers [Sun, 14 Apr 2019 06:21:42 +0000 (23:21 -0700)]
lcpit_matchfinder: fix limiting nice_match_len

The "normal" mode of the lcp-interval tree matchfinder supports finding
matches up to LCP_MAX bytes.  The "huge" mode, which is needed on
buffers larger than 64 MiB, supports up to HUGE_LCP_MAX bytes.
nice_match_len must be limited to the appropriate one of these values.

But nice_match_len is limited by lcpit_matchfinder_init().  That's
wrong, because it only knows whether huge mode *might* be used later,
based on max_bufsize.  Which mode to use is actually decided on a
buffer-by-buffer basis by lcpit_matchfinder_load_buffer().

Thus, limit nice_match_len in lcpit_matchfinder_load_buffer() instead.

This fixes a crash or incorrect output during LZMS compression with a
compression level > 50 and a chunk size > 64 MiB.

5 years agowlfuzz: improve compression parameter generation
Eric Biggers [Sun, 14 Apr 2019 06:21:42 +0000 (23:21 -0700)]
wlfuzz: improve compression parameter generation

- Sometimes choose LZMS chunk sizes > 64 MiB
- Choose LZMS more often
- Other cleanups

5 years agov1.13.0 v1.13.0
Eric Biggers [Fri, 23 Nov 2018 23:35:07 +0000 (15:35 -0800)]
v1.13.0

5 years agoUpdate libxml to 2.9.8 for Windows binaries
Eric Biggers [Fri, 23 Nov 2018 23:35:07 +0000 (15:35 -0800)]
Update libxml to 2.9.8 for Windows binaries

5 years agowlfuzz: compare xattrs on Windows
Eric Biggers [Fri, 23 Nov 2018 23:35:07 +0000 (15:35 -0800)]
wlfuzz: compare xattrs on Windows

5 years agoimagex: warn that --update-of is unreliable on Windows
Eric Biggers [Tue, 11 Sep 2018 03:11:31 +0000 (20:11 -0700)]
imagex: warn that --update-of is unreliable on Windows

5 years agowimappend: with --create, ignore --update-of nonexistent target file
Eric Biggers [Tue, 11 Sep 2018 02:58:10 +0000 (19:58 -0700)]
wimappend: with --create, ignore --update-of nonexistent target file

5 years agoRemove Arch Linux PKGBUILD
Eric Biggers [Sat, 21 Jul 2018 20:10:41 +0000 (13:10 -0700)]
Remove Arch Linux PKGBUILD

There's now an official Arch Linux package for wimlib.
So the PKGBUILD file in-tree is redundant.

5 years agowimappend: add --create option to create WIM file if needed
Eric Biggers [Sat, 21 Jul 2018 19:34:19 +0000 (12:34 -0700)]
wimappend: add --create option to create WIM file if needed

5 years agowimextract: allow specifying listfile on stdin
Eric Biggers [Sat, 21 Jul 2018 18:38:08 +0000 (11:38 -0700)]
wimextract: allow specifying listfile on stdin

5 years agoMake absolute ExclusionException patterns include ancestor directories
Eric Biggers [Sat, 21 Jul 2018 16:27:22 +0000 (09:27 -0700)]
Make absolute ExclusionException patterns include ancestor directories

5 years agoimagex: make sure we still use wgetopt_long_only() on Windows
Eric Biggers [Sat, 21 Jul 2018 16:27:22 +0000 (09:27 -0700)]
imagex: make sure we still use wgetopt_long_only() on Windows

5 years agoFix building on NetBSD
Eric Biggers [Fri, 20 Jul 2018 07:38:56 +0000 (00:38 -0700)]
Fix building on NetBSD

6 years agosplit.c: fix finding extension of first split WIM part
Eric Biggers [Wed, 28 Feb 2018 03:31:58 +0000 (19:31 -0800)]
split.c: fix finding extension of first split WIM part

Silly old bug: wimlib_split() considered the first dot in the SWM path
to begin the filename extension.  But of course, there can be other dots
in the path; we need to look for the last dot in the last component.

6 years agoUpdate NEWS
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
Update NEWS

6 years agowin32_capture: recognize STATUS_NOT_SUPPORTED (fixes for WinXP)
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
win32_capture: recognize STATUS_NOT_SUPPORTED (fixes for WinXP)

6 years agoUpdate winpthreads to 5.0.3 for Windows binaries
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
Update winpthreads to 5.0.3 for Windows binaries

6 years agoUpdate libxml to 2.9.7 for Windows binaries
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
Update libxml to 2.9.7 for Windows binaries

6 years agowimlib-imagex: add --include-integrity option
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
wimlib-imagex: add --include-integrity option

The --check option currently does two things: verify the integrity table
of the input WIM(s), and include an integrity table in the output
WIM(s).  Some users would like to do the latter only, especially if
there are large input WIM(s).

Add an option --include-integrity which does this.

6 years agowimlib-imagex: try harder to optimize out opening template WIM
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
wimlib-imagex: try harder to optimize out opening template WIM

As an optimization, 'wimcapture' and 'wimappend' don't separately open
the template WIM for --update-of if no filename is specified in that
option, which makes it default to either the single base WIM
(--delta-from), or the WIM being appended to.

Extend that optimization to cases where the filename is specified in
--update-of and it exactly matches the filename of the WIM being
appended to or any of the base WIMs.

6 years agoImprove explanation for pipable WIM pre-write checksumming
Eric Biggers [Sun, 21 Jan 2018 21:47:10 +0000 (13:47 -0800)]
Improve explanation for pipable WIM pre-write checksumming