]>
wimlib.net Git - wimlib/log
Eric Biggers [Sat, 30 May 2015 20:48:16 +0000 (15:48 -0500)]
New helper macro: ALIGN()
Eric Biggers [Sat, 30 May 2015 20:48:15 +0000 (15:48 -0500)]
Use explicit casting in ctype macros
Eric Biggers [Sat, 30 May 2015 20:48:14 +0000 (15:48 -0500)]
sha1.c: annotate load which may be unaligned
Eric Biggers [Sat, 30 May 2015 20:48:13 +0000 (15:48 -0500)]
enlarge_blob_table(): remove unnecessary hlist_del()
Eric Biggers [Sat, 30 May 2015 20:48:12 +0000 (15:48 -0500)]
New helper: wim_reshdr_to_desc_and_blob()
Eric Biggers [Sat, 30 May 2015 20:48:11 +0000 (15:48 -0500)]
write.c: do not remove empty blobs (not possible anymore)
Eric Biggers [Sat, 30 May 2015 20:48:09 +0000 (15:48 -0500)]
resource reading cleanups
Eric Biggers [Sat, 30 May 2015 20:48:08 +0000 (15:48 -0500)]
Add GUID helper functions
Eric Biggers [Sat, 30 May 2015 20:48:07 +0000 (15:48 -0500)]
Clean up pipable WIM extraction
Eric Biggers [Sat, 30 May 2015 20:48:06 +0000 (15:48 -0500)]
write.c: handle empty buffers in write_wim_resource_from_buffer()
Eric Biggers [Sat, 30 May 2015 20:48:05 +0000 (15:48 -0500)]
Disallow empty blobs from being read
Eric Biggers [Sat, 30 May 2015 20:48:04 +0000 (15:48 -0500)]
inode.c: do not create blob from zero-sized data buffer
Moving forwards towards eliminating zero-size blobs: make
inode_add_stream_with_data() and inode_replace_stream_data() use a NULL
blob pointer for zero-length buffers. Currently this can happen if a
Windows reparse point has no reparse data or if an empty named data
stream is created in a mounted WIM image.
Eric Biggers [Sat, 30 May 2015 20:48:03 +0000 (15:48 -0500)]
Require size_in_wim == uncompressed_size for uncompressed resources
It required quite a bit of extra code to handle this case, which really
should just be considered invalid.
Eric Biggers [Sat, 30 May 2015 20:48:02 +0000 (15:48 -0500)]
Use little endian types for 'struct wim_header_disk'
Eric Biggers [Sat, 30 May 2015 20:48:00 +0000 (15:48 -0500)]
Fix tagged item parsing infinite loop when 32-bit and len=0xFFFFFFF8
Eric Biggers [Sat, 30 May 2015 20:47:59 +0000 (15:47 -0500)]
util.c: Simplify strdup and wcsdup
Eric Biggers [Sat, 30 May 2015 20:47:58 +0000 (15:47 -0500)]
Use "EXIT" instead of "exit" in bash trap statements
The lower case version does not work in a Turkish locale. The upper case
version is what the bash docs actually mention and is what bash actually
checks against using strcasecmp().
Eric Biggers [Sun, 17 May 2015 22:30:45 +0000 (17:30 -0500)]
v1.8.1
Eric Biggers [Sun, 17 May 2015 21:47:47 +0000 (16:47 -0500)]
write.c: Move and fix check for defaulting to solid compression
This check should be made higher up, not in write_file_data_blobs().
In addition, it must be checked that WIMLIB_WRITE_FLAG_PIPABLE is not set.
Eric Biggers [Sun, 17 May 2015 21:17:08 +0000 (16:17 -0500)]
wimlib-imagex: Adjust wording of extract progress message
Eric Biggers [Sat, 16 May 2015 15:23:00 +0000 (10:23 -0500)]
Disallow image metadata in solid resources
Eric Biggers [Tue, 12 May 2015 04:09:05 +0000 (23:09 -0500)]
win32_apply: Improved warning messages for WIMBoot extraction
Eric Biggers [Tue, 12 May 2015 04:07:33 +0000 (23:07 -0500)]
win32_apply: Stricter checks of resource format for WOF external backing
- Only allow resources from WIM files with original file format
- Only allow XPRESS 4K/8K/16K/32K and LZX 32K resources
Eric Biggers [Tue, 12 May 2015 01:41:06 +0000 (20:41 -0500)]
win32_apply: Support multiple source WIM files for WIMBoot extraction
Eric Biggers [Sat, 9 May 2015 01:30:55 +0000 (20:30 -0500)]
wiminfo: fix string definitions for Windows
Eric Biggers [Thu, 7 May 2015 02:38:30 +0000 (21:38 -0500)]
encoding.c: Upgrade upcase table and rewrite decompression code
Eric Biggers [Thu, 7 May 2015 01:26:21 +0000 (20:26 -0500)]
Always use abbreviated integer types in library code
Eric Biggers [Thu, 7 May 2015 01:25:17 +0000 (20:25 -0500)]
win32_common.c: Missed place where winnt_error() can be used
Eric Biggers [Tue, 5 May 2015 05:04:30 +0000 (00:04 -0500)]
wimlib-imagex-apply.1: abbreviate off-topic docs about booting Windows
Eric Biggers [Tue, 5 May 2015 03:03:53 +0000 (22:03 -0500)]
wiminfo: consolidate boolean flags into single line
Eric Biggers [Tue, 5 May 2015 03:19:54 +0000 (22:19 -0500)]
wimlib_wim_info: update docs for flag bits
Eric Biggers [Tue, 5 May 2015 04:42:13 +0000 (23:42 -0500)]
wimlib-imagex-capture.1: doc improvements
Eric Biggers [Tue, 5 May 2015 04:12:32 +0000 (23:12 -0500)]
Swap all slashes in UNIX <=> Windows symlink translation
If we swap both slash types when translating each way, then the
translation is lossless.
Eric Biggers [Sun, 3 May 2015 21:35:11 +0000 (16:35 -0500)]
Improved error reporting if loading capture configuration file fails
Eric Biggers [Sun, 3 May 2015 20:01:58 +0000 (15:01 -0500)]
<sys/types.h> is sometimes required before <attr/xattr.h>
Eric Biggers [Sun, 3 May 2015 19:53:10 +0000 (14:53 -0500)]
<sys/types.h> is required before <sys/sysctl.h> on FreeBSD
Eric Biggers [Sun, 3 May 2015 01:55:55 +0000 (20:55 -0500)]
header.h: fix outdated comment
Eric Biggers [Sun, 3 May 2015 01:19:34 +0000 (20:19 -0500)]
write_wim_header(): remove unnecessary condition
Eric Biggers [Sat, 2 May 2015 22:54:04 +0000 (17:54 -0500)]
Move CPU and memory information to util
Eric Biggers [Sat, 2 May 2015 22:47:07 +0000 (17:47 -0500)]
Make win32.h includable on non-Windows
Eric Biggers [Sat, 2 May 2015 22:40:06 +0000 (17:40 -0500)]
wimlib_export_image(): error if src_wim == dest_wim
Eric Biggers [Sat, 2 May 2015 21:54:38 +0000 (16:54 -0500)]
write: various cleanups
- When writing or overwriting WIM file, fill in a new variable
wim->out_hdr instead of overwriting wim->hdr which was subject to bugs
- When writing WIM file, create new header from scratch instead of
copying old one
- Remove redundant private flags
- Remove debug statements (they are rarely used, outdated, and now
missing from most parts of the library)
Eric Biggers [Sat, 2 May 2015 22:25:29 +0000 (17:25 -0500)]
mount_image: ensure we always begin with empty file descriptor array
Eric Biggers [Sat, 2 May 2015 20:07:50 +0000 (15:07 -0500)]
xml.c: Fix writing XML data for one image only
Eric Biggers [Sat, 2 May 2015 20:52:43 +0000 (15:52 -0500)]
wimlib_print_header(): fix printing of magic number
Eric Biggers [Sat, 2 May 2015 20:40:58 +0000 (15:40 -0500)]
sha1.h: remove unused inline functions
Eric Biggers [Sat, 2 May 2015 19:57:56 +0000 (14:57 -0500)]
wim.c: adjust wimlib_compression_type casting
Eric Biggers [Sat, 2 May 2015 18:39:17 +0000 (13:39 -0500)]
Win32 capture: sort streams by starting LCN
Eric Biggers [Sat, 2 May 2015 16:35:59 +0000 (11:35 -0500)]
NTFS-3g capture: use reference-counted NTFS volumes
This avoids the hack of storing the NTFS volume in
'struct wim_image_metadata'.
Eric Biggers [Sat, 2 May 2015 15:41:47 +0000 (10:41 -0500)]
NTFS-3g capture: sort attributes by starting LCN
Eric Biggers [Sat, 2 May 2015 15:11:43 +0000 (10:11 -0500)]
NTFS-3g capture: open inodes by inode number
Eric Biggers [Sat, 2 May 2015 02:51:40 +0000 (21:51 -0500)]
wim_inode: Remove i_list, leaving only i_hlist
Eric Biggers [Fri, 1 May 2015 02:26:32 +0000 (21:26 -0500)]
Various cleanups
Eric Biggers [Fri, 1 May 2015 03:53:05 +0000 (22:53 -0500)]
New helper: inode_get_unnamed_data_stream()
Eric Biggers [Fri, 1 May 2015 03:45:49 +0000 (22:45 -0500)]
mount_image.c: set st_blocks to compressed size
Eric Biggers [Fri, 1 May 2015 03:15:05 +0000 (22:15 -0500)]
xml.c: Simplify image statistics calculation
Eric Biggers [Fri, 1 May 2015 00:38:21 +0000 (19:38 -0500)]
Use -D_POSIX_THREAD_SAFE_FUNCTIONS for MinGW build
The latest MinGW only exposes gmtime_r() if this is defined.
Eric Biggers [Tue, 28 Apr 2015 01:54:54 +0000 (20:54 -0500)]
wimlib_global_init(): check for conflicting case sensitivity mode
Eric Biggers [Sat, 25 Apr 2015 20:00:07 +0000 (15:00 -0500)]
Clean up setting of compression type
- Use the enum instead of an int
- Consolidate the per-compression-type information into an array
Eric Biggers [Sat, 25 Apr 2015 00:22:48 +0000 (19:22 -0500)]
wimlib.h: various documentation cleanups and improvements
Eric Biggers [Sat, 25 Apr 2015 16:51:03 +0000 (11:51 -0500)]
ntfs-3g_apply.c: use WIMLIB_ERR_SET_REPARSE_DATA
Eric Biggers [Sat, 25 Apr 2015 15:44:53 +0000 (10:44 -0500)]
wimlib_create_new_wim(): check for NULL wim_ret
Eric Biggers [Sat, 25 Apr 2015 06:13:08 +0000 (01:13 -0500)]
wimlib_get_xml_data(): should use NO_FILENAME error
Eric Biggers [Sat, 25 Apr 2015 05:09:35 +0000 (00:09 -0500)]
Serialize wimlib_global_init() and wimlib_global_cleanup()
Eric Biggers [Sat, 25 Apr 2015 04:56:39 +0000 (23:56 -0500)]
wimlib_iterate_lookup_table(): include unhashed blobs
Eric Biggers [Sat, 11 Apr 2015 14:38:58 +0000 (09:38 -0500)]
Remove unnecessary argument to hlist iteration macros
Eric Biggers [Sat, 11 Apr 2015 13:55:27 +0000 (08:55 -0500)]
Remove --enable-verify-compression option
It is easy to do manual verification with 'wimverify', and this was
already broken since "destructive" compression was introduced.
Eric Biggers [Sat, 4 Apr 2015 04:52:24 +0000 (23:52 -0500)]
v1.8.1-BETA
Eric Biggers [Sat, 4 Apr 2015 04:52:08 +0000 (23:52 -0500)]
win32_capture.c: fix capture of unnamed stream only
Eric Biggers [Thu, 2 Apr 2015 02:46:38 +0000 (21:46 -0500)]
inode/blob cleanups
Eric Biggers [Thu, 2 Apr 2015 04:43:54 +0000 (23:43 -0500)]
Improve helper functions for setting blob locations
Eric Biggers [Thu, 2 Apr 2015 02:13:13 +0000 (21:13 -0500)]
Optimize layout of 'struct blob_descriptor'
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