]>
wimlib.net Git - wimlib/log
Eric Biggers [Thu, 2 Apr 2015 01:43:36 +0000 (20:43 -0500)]
Trim down 'flags' member of 'struct blob_descriptor'
Most "blob" flags were actually only meaningful for WIM resources.
Resource flags are actually saved in the 'flags' member of 'struct
wim_resource_descriptor', and we don't need to duplicate them in 'struct
blob_descriptor'.
Eric Biggers [Sun, 29 Mar 2015 23:32:11 +0000 (18:32 -0500)]
win32_apply.c: simplify inode_longest_named_data_stream_spec()
Eric Biggers [Fri, 27 Mar 2015 05:16:58 +0000 (00:16 -0500)]
lzx_decompress.c: add missing validation in RLE length decoding
Bad input found by afl-fuzz:
1f 20 00 42 00 00 33 03 45 43 45 00 20 00 00 0e
Eric Biggers [Fri, 27 Mar 2015 02:00:48 +0000 (21:00 -0500)]
ntfs-3g_capture.c: fix capture of empty named data stream
Eric Biggers [Fri, 27 Mar 2015 01:54:53 +0000 (20:54 -0500)]
test-imagex-ntfs: fix empty xattr creation
Eric Biggers [Fri, 27 Mar 2015 01:54:22 +0000 (20:54 -0500)]
test-imagex-ntfs: remove unusable DOS name tests
Eric Biggers [Fri, 27 Mar 2015 00:40:05 +0000 (19:40 -0500)]
tests: adjust calling of wimlib-imagex
Eric Biggers [Thu, 26 Mar 2015 04:32:29 +0000 (23:32 -0500)]
wimlib_iterate_dir_tree(): checksum unhashed blobs
Eric Biggers [Thu, 26 Mar 2015 04:07:55 +0000 (23:07 -0500)]
inode.c: fix initialization of i_streams
Eric Biggers [Thu, 26 Mar 2015 04:07:20 +0000 (23:07 -0500)]
detect attr/xattr.h for tree-cmp.c
Eric Biggers [Thu, 26 Mar 2015 00:58:44 +0000 (19:58 -0500)]
ntfs-3g_apply.c: avoid warning about sacl_offset unused
Eric Biggers [Wed, 25 Mar 2015 01:08:13 +0000 (20:08 -0500)]
Adjust handling of blob reference counts
Eric Biggers [Wed, 25 Mar 2015 02:23:42 +0000 (21:23 -0500)]
mount_image.c: rename create_dentry() to create_file()
Eric Biggers [Wed, 25 Mar 2015 01:46:01 +0000 (20:46 -0500)]
Limit exposure of dentry and inode creation
- Don't allow creating d_inode=NULL dentries outside of dentry.c
- Don't allow creating i_nlink=0 inodes
Eric Biggers [Tue, 24 Mar 2015 01:47:38 +0000 (20:47 -0500)]
blob_table.c: fix NTFS location clone error path
Eric Biggers [Tue, 24 Mar 2015 00:31:15 +0000 (19:31 -0500)]
extract.c: file_name_valid(): fix bad memdup
Eric Biggers [Tue, 17 Mar 2015 03:17:15 +0000 (22:17 -0500)]
Stream and blob updates
- Rename "lookup table entry" to "blob descriptor"
- Rename "lookup table" to "blob table"
- Use single array for all an inode's streams
- Explicitly annotate each stream with its type
- Account for fact that EFSRPC raw data includes all data streams
- Other cleanups
Eric Biggers [Sun, 22 Mar 2015 20:44:31 +0000 (15:44 -0500)]
Add additional reparse point tests to win32-test-imagex-capture_and_apply.bat
Eric Biggers [Sun, 15 Mar 2015 01:47:39 +0000 (20:47 -0500)]
win32_apply.c: Don't externally back very large files
Eric Biggers [Sun, 15 Mar 2015 01:25:53 +0000 (20:25 -0500)]
win32_apply.c: try to clear attributes on existing directories
Eric Biggers [Sun, 15 Mar 2015 01:22:22 +0000 (20:22 -0500)]
win32_apply.c: handle target directory more like other directories
If we don't send the target directory through the same code path as the
other directories, we can run into several inconsistencies such as empty
named data streams not being created and compression attributes not being
set or cleared.
We actually *can* send the target directory through create_directory() as
long as we don't ask for DELETE access (in case it's the current working
directory) or set its short name (since that doesn't make sense anyway).
Eric Biggers [Sun, 15 Mar 2015 01:11:13 +0000 (20:11 -0500)]
win32-test-imagex-capture_and_apply improvements
- Make test failure message always get printed if anything goes wrong
- Fix bad file comparison
- Apply the WIM image twice to test the existing files case
- Add test for a readonly directory with a named data stream
- Add test for root directory with empty named data stream
Eric Biggers [Wed, 25 Feb 2015 04:55:41 +0000 (22:55 -0600)]
v1.8.0
Eric Biggers [Wed, 25 Feb 2015 04:44:13 +0000 (22:44 -0600)]
LZMS compression: a few minor cleanups
Eric Biggers [Tue, 24 Feb 2015 01:23:44 +0000 (19:23 -0600)]
LZMS compression: use position instead of pointer for delta hash
This gives predictable results regardless of how the buffer is aligned.
Eric Biggers [Tue, 24 Feb 2015 00:08:17 +0000 (18:08 -0600)]
lzms_decompress.c: Make bit decoding function names consistent with compressor
Eric Biggers [Tue, 24 Feb 2015 00:08:11 +0000 (18:08 -0600)]
lcpit_matchfinder: cleanups and optimizations
Eric Biggers [Thu, 19 Feb 2015 05:06:40 +0000 (23:06 -0600)]
A few cleanups and fixes from recent changes
Eric Biggers [Wed, 18 Feb 2015 04:13:56 +0000 (22:13 -0600)]
Update README.WINDOWS
Eric Biggers [Wed, 18 Feb 2015 02:42:42 +0000 (20:42 -0600)]
Update Windows test script
Eric Biggers [Wed, 18 Feb 2015 02:38:23 +0000 (20:38 -0600)]
win32_capture.c: Use CREATE_FOR_DIR flag for encrypted directories
Oddly enough, this is required when reading the EFS data for an encrypted
directory with named data streams, even though MS's documentation
suggests that CREATE_FOR_DIR only has an effect for import.
Eric Biggers [Wed, 18 Feb 2015 02:36:05 +0000 (20:36 -0600)]
Do not use ADS entry workaround on encrypted files
Eric Biggers [Tue, 17 Feb 2015 06:57:36 +0000 (00:57 -0600)]
wimlib-imagex: list --solid in help for more commands
Eric Biggers [Tue, 17 Feb 2015 03:13:51 +0000 (21:13 -0600)]
Various cleanups
Eric Biggers [Mon, 16 Feb 2015 06:26:14 +0000 (00:26 -0600)]
Fix Makefile.am
Eric Biggers [Mon, 16 Feb 2015 05:34:14 +0000 (23:34 -0600)]
Use v1.8.0 as next version instead of v1.7.5
Eric Biggers [Mon, 16 Feb 2015 05:16:23 +0000 (23:16 -0600)]
Update NEWS, README, and docs
Eric Biggers [Mon, 16 Feb 2015 01:04:29 +0000 (19:04 -0600)]
Use 64MiB chunks by default for solid LZMS
Eric Biggers [Fri, 13 Feb 2015 07:13:15 +0000 (01:13 -0600)]
LCP-interval tree matchfinder improvements
- Adjust the algorithm to remove the need to have an "unvisited" flag in
normal mode.
- Prefetch upcoming SA_and_LCP entries during LCP construction.
- Get rid of lcpit_matchfinder_templates.h, since the "huge mode"
algorithm isn't quite the same as the regular algorithm anymore.
- Improve documentation.
Eric Biggers [Sun, 15 Feb 2015 00:30:24 +0000 (18:30 -0600)]
Support "destructive" compression to save memory
Eric Biggers [Sat, 14 Feb 2015 22:03:28 +0000 (16:03 -0600)]
Reduce unnecessary copying during chunk compression
Eric Biggers [Sat, 14 Feb 2015 20:58:45 +0000 (14:58 -0600)]
Add flag for disabling solid sort
Eric Biggers [Sat, 14 Feb 2015 16:47:56 +0000 (10:47 -0600)]
Heuristic sorting of streams for solid compression
Eric Biggers [Sat, 14 Feb 2015 05:39:24 +0000 (23:39 -0600)]
Update documentation for wimcapture
Eric Biggers [Sat, 14 Feb 2015 04:53:50 +0000 (22:53 -0600)]
wimlib-imagex: allow specifying suffix in chunk size options
Eric Biggers [Sat, 14 Feb 2015 04:04:41 +0000 (22:04 -0600)]
Consistently use the name "solid resource"
Eric Biggers [Fri, 13 Feb 2015 01:01:06 +0000 (19:01 -0600)]
Rewrite of LZMS compressor
- Delta match support
- Multi-step item consideration in selected cases
- Various refactoring; updates to comments and names; some changes to
decompressor as well
- Remove pthreads dependency
Eric Biggers [Sat, 7 Feb 2015 03:59:47 +0000 (21:59 -0600)]
lzms_decompress.c: Adjust names in delta match decompression code
Eric Biggers [Sat, 7 Feb 2015 03:59:11 +0000 (21:59 -0600)]
lzms_decompress.c: Add more information about delta matches
Eric Biggers [Sat, 31 Jan 2015 23:51:23 +0000 (17:51 -0600)]
Suffix array based matchfinder updates
- Move LCP-interval tree matchfinder to lcpit_matchfinder.c
- Support buffer sizes > 2^25 in LCP-interval tree matchfinder
- Reduce code duplication in LCP-interval tree routines
- Remove linked suffix array matchfinder
- Remove lz_mf matchfinder API
- Update LZMS compressor to use new LCP-interval tree matchfinder routines
Eric Biggers [Fri, 30 Jan 2015 03:59:35 +0000 (21:59 -0600)]
1.7.5-BETA3
Eric Biggers [Fri, 30 Jan 2015 03:24:57 +0000 (21:24 -0600)]
Move errno translation to win32_replacements.c
Eric Biggers [Fri, 30 Jan 2015 01:16:28 +0000 (19:16 -0600)]
Windows: improved error messages
Eric Biggers [Fri, 30 Jan 2015 01:28:31 +0000 (19:28 -0600)]
win32_apply.c: in NO_ATTRIBUTES mode, reset file attributes
Eric Biggers [Fri, 30 Jan 2015 00:46:30 +0000 (18:46 -0600)]
win32-test-imagex-capture_and_apply.bat: fixes
Eric Biggers [Thu, 29 Jan 2015 05:37:28 +0000 (23:37 -0600)]
win32_apply.c: adjust file creation
Eric Biggers [Thu, 29 Jan 2015 06:25:19 +0000 (00:25 -0600)]
win32-tree-cmp: Ignore directory sizes
Eric Biggers [Thu, 29 Jan 2015 05:13:36 +0000 (23:13 -0600)]
win32-test-imagex-capture_and_apply.bat: add tests for empty named stream
Eric Biggers [Thu, 29 Jan 2015 04:26:11 +0000 (22:26 -0600)]
win32-test-imagex-capture_and_apply.bat: add some tests
Eric Biggers [Thu, 29 Jan 2015 03:05:30 +0000 (21:05 -0600)]
win32-tree-cmp updates
Eric Biggers [Thu, 29 Jan 2015 02:36:36 +0000 (20:36 -0600)]
ntfs-3g_apply.c: Don't claim to support encrypted directories
Eric Biggers [Wed, 28 Jan 2015 05:28:48 +0000 (23:28 -0600)]
Update NEWS
Eric Biggers [Wed, 28 Jan 2015 05:18:51 +0000 (23:18 -0600)]
win32_apply.c: fix restore of encrypted files and directories
Eric Biggers [Wed, 28 Jan 2015 04:31:41 +0000 (22:31 -0600)]
win32_apply.c: test for EFS data before reparse data
Eric Biggers [Wed, 28 Jan 2015 04:30:22 +0000 (22:30 -0600)]
extract.c: dentry_is_supported(): check all relevant attributes
Eric Biggers [Wed, 28 Jan 2015 04:07:52 +0000 (22:07 -0600)]
win32_capture.c: use NULL instead of INVALID_HANDLE_VALUE
Code was correct, but since this is an NT-level handle NULL makes more
sense.
Eric Biggers [Wed, 28 Jan 2015 04:05:56 +0000 (22:05 -0600)]
win32_capture.c: adjust loading stream info from encrypted files
The previous code was not using ReadEncryptedFileRaw() on directories,
which is apparently needed.
Eric Biggers [Wed, 28 Jan 2015 02:58:28 +0000 (20:58 -0600)]
extract.c: check for empty extraction list
Eric Biggers [Wed, 28 Jan 2015 02:45:00 +0000 (20:45 -0600)]
win32_capture.c: fix for opening encrypted files when key is unavailable
Eric Biggers [Wed, 28 Jan 2015 01:14:36 +0000 (19:14 -0600)]
Update NEWS
Eric Biggers [Wed, 28 Jan 2015 01:09:36 +0000 (19:09 -0600)]
wimlib_iterate_dir_tree(): iterate in default case order
Eric Biggers [Sun, 25 Jan 2015 20:53:06 +0000 (14:53 -0600)]
lz_lcpit: check against min_match_len ahead of time
Eric Biggers [Sun, 25 Jan 2015 19:36:00 +0000 (13:36 -0600)]
lz_lcpit: pack SA and LCP into one array
Eric Biggers [Sun, 25 Jan 2015 17:54:47 +0000 (11:54 -0600)]
lz_lcpit: simplify and optimize build_LCPIT()
Eric Biggers [Wed, 28 Jan 2015 00:03:09 +0000 (18:03 -0600)]
add missing file: include/wimlib/alloca.h
Eric Biggers [Sun, 25 Jan 2015 16:47:05 +0000 (10:47 -0600)]
tools/make-windows-release: build with -DLIBXML_STATIC
This is needed to correctly link with xmlFree().
Eric Biggers [Sun, 25 Jan 2015 16:35:24 +0000 (10:35 -0600)]
header cleanups
Eric Biggers [Sun, 25 Jan 2015 01:47:28 +0000 (19:47 -0600)]
xml.c: Use xmlFree() for memory allocated by libxml2
Eric Biggers [Sun, 25 Jan 2015 01:36:13 +0000 (19:36 -0600)]
util.c: Simplify wimlib_aligned_malloc()
Eric Biggers [Sun, 25 Jan 2015 00:43:42 +0000 (18:43 -0600)]
update_image.c: handle_conflict(): fix freeing of unused branch
If the directory has alternate data streams, they should be freed here.
Eric Biggers [Sat, 24 Jan 2015 16:20:12 +0000 (10:20 -0600)]
Clean up inode alias tracking
New helper functions:
- d_associate()
- d_disassociate()
i_nlink, d_inode, and i_dentry are no longer changed outside of these
functions. We maintain the invariants:
i_nlink == list_size(&i_dentry) == # of d_inode references
put_inode() is removed; free_inode() is now private to inode.c.
This fixes at least one bug: when freeing a dentry, it was not being
deleted from the inode's dentry list.
Eric Biggers [Tue, 20 Jan 2015 00:04:14 +0000 (18:04 -0600)]
lzx_compress.c: adjust saving of length 2 matches
Eric Biggers [Wed, 14 Jan 2015 03:55:46 +0000 (21:55 -0600)]
lzx_compress.c: cleanups
Eric Biggers [Wed, 14 Jan 2015 03:48:01 +0000 (21:48 -0600)]
LZ hashing cleanup
Eric Biggers [Mon, 12 Jan 2015 02:06:41 +0000 (20:06 -0600)]
Ensure validity of max_search_depth
Eric Biggers [Mon, 12 Jan 2015 01:03:10 +0000 (19:03 -0600)]
wimlib.h: Fix documentation for compression block sizes
Eric Biggers [Sun, 11 Jan 2015 21:30:29 +0000 (15:30 -0600)]
lzx_compress.c: Clarify some array bounds
Eric Biggers [Sun, 11 Jan 2015 16:40:26 +0000 (10:40 -0600)]
v1.7.5-BETA
Eric Biggers [Sun, 11 Jan 2015 16:24:07 +0000 (10:24 -0600)]
Merge LZX compression updates
Eric Biggers [Sat, 3 Jan 2015 02:01:26 +0000 (20:01 -0600)]
v1.7.4
Eric Biggers [Sat, 3 Jan 2015 01:43:00 +0000 (19:43 -0600)]
lzms_compress.c: honor LZMS_MAX_BUFFER_SIZE
Eric Biggers [Sat, 3 Jan 2015 00:25:50 +0000 (18:25 -0600)]
Misc. cleanups
Eric Biggers [Tue, 30 Dec 2014 03:31:51 +0000 (21:31 -0600)]
Restore -std=gnu99 instead of -std=c99
Eric Biggers [Tue, 30 Dec 2014 03:26:06 +0000 (21:26 -0600)]
Adjust endianness detection
__BYTE_ORDER__ isn't available in older gcc, unfortunately.
Eric Biggers [Tue, 30 Dec 2014 02:40:53 +0000 (20:40 -0600)]
README: update COMPRESSION RATIO section
Eric Biggers [Tue, 30 Dec 2014 03:01:07 +0000 (21:01 -0600)]
Use --enable-ssse3-sha1 for x86_64 Windows builds
Eric Biggers [Mon, 29 Dec 2014 02:03:09 +0000 (20:03 -0600)]
Cleanups from recent changes
Eric Biggers [Fri, 26 Dec 2014 20:16:44 +0000 (14:16 -0600)]
Adjust naming of (de)compression files
Eric Biggers [Fri, 26 Dec 2014 16:56:16 +0000 (10:56 -0600)]
LZMS: decompression optimizations
Eric Biggers [Thu, 25 Dec 2014 02:33:49 +0000 (20:33 -0600)]
LZMS: optimize lzms_x86_filter()