wimlib
5 years agoUpdate README and README.WINDOWS
Eric Biggers [Wed, 6 Aug 2014 23:58:10 +0000 (18:58 -0500)]
Update README and README.WINDOWS

5 years agoLZX decompression: Cleanup
Eric Biggers [Wed, 6 Aug 2014 03:26:38 +0000 (22:26 -0500)]
LZX decompression:  Cleanup

No change in behavior.

5 years agomount_image.c: Cleanup
Eric Biggers [Wed, 6 Aug 2014 02:00:00 +0000 (21:00 -0500)]
mount_image.c: Cleanup

- Improve some comments.
- Don't use the T() macro.  The mount code doesn't run on Windows.
- Make sure we don't accidentally return errno=0.
- Return WIMLIB_ERR_NO_FILENAME if read-write mounting WIM that has no
  backing file.
- inode_resolve_streams() already does nothing if inode->i_resolved
- create_dentry() is never called with NULL 'dentry_ret'
- attr_timeout=0 was in FUSE options two times!
- 'have_progfunc' argument to create_message_queue() was always true; get
  rid of it.
- Use geteuid() rather than getuid() when testing for root

5 years agoread_wim_header(): Check return value of lseek()
Eric Biggers [Tue, 5 Aug 2014 02:16:46 +0000 (21:16 -0500)]
read_wim_header(): Check return value of lseek()

5 years agontfs-3g_capture.c: Remove a never-executed statement
Eric Biggers [Tue, 5 Aug 2014 02:07:07 +0000 (21:07 -0500)]
ntfs-3g_capture.c: Remove a never-executed statement

5 years agocapture_common.c: Add missing breaks in switch stmt in do_capture_progress()
Eric Biggers [Tue, 5 Aug 2014 02:02:14 +0000 (21:02 -0500)]
capture_common.c: Add missing breaks in switch stmt in do_capture_progress()

No effect because EXCLUDE_VERBOSE is set whenever VERBOSE is, but these
should be there.

5 years agoextract.c: Fix dereference of NULL in memory exhausted path
Eric Biggers [Tue, 5 Aug 2014 01:57:03 +0000 (20:57 -0500)]
extract.c: Fix dereference of NULL in memory exhausted path

found_lte can be NULL here if the call to new_lookup_table_entry()
failed.

5 years agowrite.c: Fix handling of NULL context in stream_filtered()
Eric Biggers [Tue, 5 Aug 2014 01:46:24 +0000 (20:46 -0500)]
write.c: Fix handling of NULL context in stream_filtered()

A NULL filter_context is supposed to be valid and interpreted as "don't
filter anything".  This case can't be triggered by wimlib-imagex, but it
might be possible via custom library calls.

5 years agowim.h: Delete prototype for nonexistent function close_wim()
Eric Biggers [Sun, 3 Aug 2014 23:46:11 +0000 (18:46 -0500)]
wim.h: Delete prototype for nonexistent function close_wim()

5 years agowin32_common.c: Remove code for windows version detection
Eric Biggers [Sun, 3 Aug 2014 23:41:11 +0000 (18:41 -0500)]
win32_common.c:  Remove code for windows version detection

This isn't used by anything anymore.

5 years agoxpress.h: Remove ENABLE_XPRESS_DEBUG
Eric Biggers [Sun, 3 Aug 2014 23:37:36 +0000 (18:37 -0500)]
xpress.h: Remove ENABLE_XPRESS_DEBUG

Neither XPRESS_DEBUG() nor XPRESS_ASSERT() is used anymore.

5 years agodebian/: wimlib9 => wimlib15
Eric Biggers [Sun, 3 Aug 2014 23:24:51 +0000 (18:24 -0500)]
debian/: wimlib9 => wimlib15

Should have been done for 1.7.0.

5 years agolzms-compress.c: Fix crash on compression levels 1 through 4
Eric Biggers [Sat, 2 Aug 2014 14:19:54 +0000 (09:19 -0500)]
lzms-compress.c: Fix crash on compression levels 1 through 4

lzms_get_near_optimal_item() assumes that nice_match_length >=
min_match_length.

5 years agoextract.c: Fix yet another bug in many-identical-streams case
Eric Biggers [Sat, 2 Aug 2014 02:33:33 +0000 (21:33 -0500)]
extract.c: Fix yet another bug in many-identical-streams case

5 years agowimlib.h: Update wimlib_create_compressor() docs
Eric Biggers [Sat, 2 Aug 2014 02:12:24 +0000 (21:12 -0500)]
wimlib.h: Update wimlib_create_compressor() docs

5 years agowin32_capture.c: Ignore unnamed data stream of reparse point
Eric Biggers [Sat, 2 Aug 2014 00:52:40 +0000 (19:52 -0500)]
win32_capture.c: Ignore unnamed data stream of reparse point

This data will not be archived; only the reparse data will.  So there's
no need to create a 'struct wim_lookup_table_entry' for it.

If a reparse point had an unnamed data stream, the assertion introduced
in commit 321750354891a0968ca0c3664417eae73b9414aa would be triggered.
This is just as well, because this case wasn't being handled in the most
logical way.

5 years agoAdd WIMLIB_PROGRESS_MSG_EXTRACT_{FILE_STRUCTURE,METADATA}
Eric Biggers [Tue, 29 Jul 2014 02:12:25 +0000 (21:12 -0500)]
Add WIMLIB_PROGRESS_MSG_EXTRACT_{FILE_STRUCTURE,METADATA}

These are essentially updated versions of
WIMLIB_PROGRESS_MSG_EXTRACT_{DIR_STRUCTURE,TIMESTAMPS} which were removed
in v1.7.0.  The new versions will file periodically, so they can be used
as cancellation points where the library user provides
WIMLIB_PROGRESS_STATUS_ABORT.

5 years agodecompress_common.h: Add back check for buffer overrun
Eric Biggers [Tue, 29 Jul 2014 02:30:56 +0000 (21:30 -0500)]
decompress_common.h: Add back check for buffer overrun

This got lost by commit 8e9c6b63fcba9406cea6b742859e7730e0e2e8a9 two days
ago.  This check is still needed, unfortunately.

The unrolled loop and is_constant() optimization still helps a bit, but
not as much now.

5 years agowimlib-imagex.1: Mention 'verify' subcommand
Eric Biggers [Mon, 28 Jul 2014 03:39:46 +0000 (22:39 -0500)]
wimlib-imagex.1: Mention 'verify' subcommand

5 years agoextract.c: Fix extract_from_tmpfile()
Eric Biggers [Mon, 28 Jul 2014 03:28:06 +0000 (22:28 -0500)]
extract.c: Fix extract_from_tmpfile()

5 years agoAbbreviate the NEWS a bit
Eric Biggers [Mon, 28 Jul 2014 03:08:38 +0000 (22:08 -0500)]
Abbreviate the NEWS a bit

5 years agoAdd 'wimlib-imagex verify' command
Eric Biggers [Mon, 28 Jul 2014 03:02:28 +0000 (22:02 -0500)]
Add 'wimlib-imagex verify' command

5 years agoAdd wimlib_verify_wim()
Eric Biggers [Mon, 28 Jul 2014 02:38:16 +0000 (21:38 -0500)]
Add wimlib_verify_wim()

5 years agoAdd sprint_hash()
Eric Biggers [Sun, 27 Jul 2014 23:50:46 +0000 (18:50 -0500)]
Add sprint_hash()

Delete print_hash() and get_sha1_string()

5 years agowimlib-imagex.1: Update license statement
Eric Biggers [Sun, 27 Jul 2014 19:18:44 +0000 (14:18 -0500)]
wimlib-imagex.1: Update license statement

5 years agoUpdate COMPRESSION RATIO section in README
Eric Biggers [Sun, 27 Jul 2014 18:47:29 +0000 (13:47 -0500)]
Update COMPRESSION RATIO section in README

5 years agolzx-compress.c: Update some comments
Eric Biggers [Sun, 27 Jul 2014 16:11:26 +0000 (11:11 -0500)]
lzx-compress.c: Update some comments

5 years agolzx-compress.c: Don't update recent offset queue unnecessarily
Eric Biggers [Sun, 27 Jul 2014 03:13:26 +0000 (22:13 -0500)]
lzx-compress.c: Don't update recent offset queue unnecessarily

5 years agolzx-compress.c: Speed up rep match cost evaluations
Eric Biggers [Sun, 27 Jul 2014 02:11:31 +0000 (21:11 -0500)]
lzx-compress.c: Speed up rep match cost evaluations

5 years agolzx-compress.c: Use local variable for 'optimum' pointer
Eric Biggers [Sun, 27 Jul 2014 01:32:13 +0000 (20:32 -0500)]
lzx-compress.c: Use local variable for 'optimum' pointer

5 years agodecompress_common.h: Optimize bitstream_ensure_bits()
Eric Biggers [Sat, 26 Jul 2014 23:38:08 +0000 (18:38 -0500)]
decompress_common.h: Optimize bitstream_ensure_bits()

5 years agolz_binary_trees.c: Avoid buffer overrun if min_match_len > 3
Eric Biggers [Sat, 26 Jul 2014 18:46:54 +0000 (13:46 -0500)]
lz_binary_trees.c: Avoid buffer overrun if min_match_len > 3

5 years agolz_hash_chains.c: Avoid buffer overrun if min_match_len > 3
Eric Biggers [Sat, 26 Jul 2014 18:36:31 +0000 (13:36 -0500)]
lz_hash_chains.c: Avoid buffer overrun if min_match_len > 3

5 years agoxpress-compress.c: Use dedicated choose-items function for each parsing strategy
Eric Biggers [Sat, 26 Jul 2014 00:38:20 +0000 (19:38 -0500)]
xpress-compress.c: Use dedicated choose-items function for each parsing strategy

This speeds up lazy and greedy parsing.

5 years agolz_hash_chains.c: Add some comments to lz_hc_get_matches()
Eric Biggers [Sat, 26 Jul 2014 15:42:57 +0000 (10:42 -0500)]
lz_hash_chains.c:  Add some comments to lz_hc_get_matches()

5 years agolz_hash_chains.c: Hand-inline do_search()
Eric Biggers [Fri, 25 Jul 2014 04:35:44 +0000 (23:35 -0500)]
lz_hash_chains.c:  Hand-inline do_search()

On x86_64 this improves performance slightly (XPRESS compression ~3%
faster).  Probably a lot of the difference is due to redundant checks
against 'max_len' getting removed.

5 years agoUpdate NEWS
Eric Biggers [Sat, 26 Jul 2014 13:14:58 +0000 (08:14 -0500)]
Update NEWS

5 years agolzms-common.c: Don't process first byte in x86 filter
Eric Biggers [Sat, 26 Jul 2014 05:58:40 +0000 (00:58 -0500)]
lzms-common.c:  Don't process first byte in x86 filter

Microsoft's LZMS compressor and decompressor seemingly skip this byte.

This resulted in different behavior on the following uncompressed data:

0000000 e8 6b e8 fb ff 5e 1f 03 e8 63 e8 fb ff 5e c0 02
0000016 e8 5b e8 fb ff 5e 51 01 e8 53 e8 fb ff 5e c4 00

wimlib would do a translation following the e8 byte at offset 16, since
it would enable x86 translations following the identification of matching
absolute addresses following the potential opcodes at offsets 0 and 8.
But as far as I can tell, the Microsoft implementation just skips byte 0
entirely and doesn't consider it as beginning a potential instruction.

5 years agolzms-common.c: Add comment to lzms_x86_filter()
Eric Biggers [Sat, 26 Jul 2014 05:44:29 +0000 (00:44 -0500)]
lzms-common.c: Add comment to lzms_x86_filter()

5 years agoimagex-export.1.in: Add ESD <=> WIM examples
Eric Biggers [Fri, 25 Jul 2014 03:45:09 +0000 (22:45 -0500)]
imagex-export.1.in: Add ESD <=> WIM examples

5 years agoimagex-capture.1.in: Update
Eric Biggers [Fri, 25 Jul 2014 03:40:01 +0000 (22:40 -0500)]
imagex-capture.1.in: Update

5 years agoRemove "brute force" match-finding algorithm
Eric Biggers [Fri, 25 Jul 2014 02:58:02 +0000 (21:58 -0500)]
Remove "brute force" match-finding algorithm

It's not of much use, and the code ended up being more complicated than I
had planned.  Just get rid of it.

5 years agoresource.c: Make extract_chunk_to_fd() static
Eric Biggers [Fri, 25 Jul 2014 02:30:41 +0000 (21:30 -0500)]
resource.c: Make extract_chunk_to_fd() static

5 years agowim.c: Cleanup
Eric Biggers [Fri, 25 Jul 2014 01:57:40 +0000 (20:57 -0500)]
wim.c: Cleanup

Starting to remove some error messages that are mostly or entirely
redundant with the returned error code.

5 years agoCheck return value of wimlib_global_init() when called in lib
Eric Biggers [Fri, 25 Jul 2014 01:04:29 +0000 (20:04 -0500)]
Check return value of wimlib_global_init() when called in lib

On Windows, wimlib_global_init() can fail if functions are missing from
ntdll.  It's best to fail fast in this case rather than plowing ahead and
assuming the user would have already called wimlib_global_init()
themselves if they cared.

5 years agoinode.c: cleanup
Eric Biggers [Thu, 24 Jul 2014 06:20:38 +0000 (01:20 -0500)]
inode.c: cleanup

5 years agoRemove some unneeded includes
Eric Biggers [Thu, 24 Jul 2014 05:05:24 +0000 (00:05 -0500)]
Remove some unneeded includes

5 years agodentry.c: Cleanup + improve comments
Eric Biggers [Thu, 24 Jul 2014 04:07:29 +0000 (23:07 -0500)]
dentry.c: Cleanup + improve comments

5 years agocleanups
Eric Biggers [Mon, 21 Jul 2014 02:47:09 +0000 (21:47 -0500)]
cleanups

5 years agowin32_apply.c: Add comment about registry changes
Eric Biggers [Sun, 20 Jul 2014 06:50:24 +0000 (01:50 -0500)]
win32_apply.c: Add comment about registry changes

5 years agoSpeed up match length computations
Eric Biggers [Sun, 20 Jul 2014 04:44:17 +0000 (23:44 -0500)]
Speed up match length computations

5 years agoMerge compression updates
Eric Biggers [Sat, 19 Jul 2014 22:11:59 +0000 (17:11 -0500)]
Merge compression updates

- New internal match-finding API (might release as stand-alone library
  sometime)
- Add some new match-finding algorithms
- Get rid of lz_hash.c / lz_analyze_block()
- Add optimal parsing to XPRESS
- Optimize get_matches() / skip_bytes() calls in XPRESS and LZX
  compressors
- Get rid of decompressor parameters
- Get rid of compressor parameters exposed in API (use compression levels
  instead)

5 years agowin32_capture.c: Fix memory leak in error path
Eric Biggers [Sat, 5 Jul 2014 19:24:04 +0000 (14:24 -0500)]
win32_capture.c: Fix memory leak in error path

5 years agolzx-compress.c: Rename lzx_record_ctx.matches
Eric Biggers [Sat, 5 Jul 2014 19:17:30 +0000 (14:17 -0500)]
lzx-compress.c: Rename lzx_record_ctx.matches

5 years agolzx-compress.c: Rename lzx_write_matches_and_literals()
Eric Biggers [Sat, 5 Jul 2014 19:13:40 +0000 (14:13 -0500)]
lzx-compress.c: Rename lzx_write_matches_and_literals()

5 years ago{lzx,lzms}-decompress.c: Include wimlib/error.h, not wimlib.h
Eric Biggers [Sat, 5 Jul 2014 02:54:41 +0000 (21:54 -0500)]
{lzx,lzms}-decompress.c: Include wimlib/error.h, not wimlib.h

5 years agoxpress-decompress.c: Remove unneeded wimlib.h include
Eric Biggers [Sat, 5 Jul 2014 02:53:05 +0000 (21:53 -0500)]
xpress-decompress.c: Remove unneeded wimlib.h include

5 years ago{de,}compressor_ops.h: Forward declare params header
Eric Biggers [Sat, 5 Jul 2014 02:51:35 +0000 (21:51 -0500)]
{de,}compressor_ops.h: Forward declare params header

5 years agoxpress-compress.c: Rename xpress_match => xpress_item
Eric Biggers [Sat, 5 Jul 2014 02:22:01 +0000 (21:22 -0500)]
xpress-compress.c: Rename xpress_match => xpress_item

5 years agolzx-compress.c: Minor cleanups
Eric Biggers [Sat, 5 Jul 2014 02:11:12 +0000 (21:11 -0500)]
lzx-compress.c: Minor cleanups

5 years agoGet rid of input_idx_t
Eric Biggers [Sat, 5 Jul 2014 01:53:23 +0000 (20:53 -0500)]
Get rid of input_idx_t

This can't simply be changed anymore, so there's not much point in having
it.  For now window sizes are fixed at 32 bits.

5 years agoRename raw_match => lz_match
Eric Biggers [Sat, 5 Jul 2014 01:41:53 +0000 (20:41 -0500)]
Rename raw_match => lz_match

5 years agolzx-compress.c: Rename lzx_match => lzx_item
Eric Biggers [Sat, 5 Jul 2014 01:34:34 +0000 (20:34 -0500)]
lzx-compress.c: Rename lzx_match => lzx_item

An LZX item can be a match or a literal.  This makes more sense than "a
LZX match can be a match or a literal".

5 years agoEnsure WIM has filename before doing WIMBoot extraction
Eric Biggers [Fri, 4 Jul 2014 02:00:00 +0000 (21:00 -0500)]
Ensure WIM has filename before doing WIMBoot extraction

5 years agowimboot.c: Set correct error code if rename fails
Eric Biggers [Fri, 4 Jul 2014 01:57:00 +0000 (20:57 -0500)]
wimboot.c: Set correct error code if rename fails

5 years agowin32_apply.c: Minor cleanups
Eric Biggers [Fri, 4 Jul 2014 01:37:06 +0000 (20:37 -0500)]
win32_apply.c: Minor cleanups

5 years agoPlace headers that could be useful in unrelated projects in public domain
Eric Biggers [Fri, 4 Jul 2014 00:04:23 +0000 (19:04 -0500)]
Place headers that could be useful in unrelated projects in public domain

5 years agolzms-decompress.c: Update comments about Huffman codes
Eric Biggers [Thu, 3 Jul 2014 23:51:18 +0000 (18:51 -0500)]
lzms-decompress.c: Update comments about Huffman codes

Make consistent with the observations in compress_common.c

5 years agoPlace common decompression/compression code in public domain
Eric Biggers [Thu, 3 Jul 2014 23:25:13 +0000 (18:25 -0500)]
Place common decompression/compression code in public domain

Not much except Huffman coding in these files anymore, and that should be
completely free especially since it's been over 60 years since it was
invented...

5 years agowin32_capture.c: Fix exclusion when capture path ends in slash
Eric Biggers [Sat, 28 Jun 2014 23:32:32 +0000 (18:32 -0500)]
win32_capture.c:  Fix exclusion when capture path ends in slash

Broken by e9aed5bf5c3296f35ff7007cb1702c07b7dc2b37

5 years agodoc updates
Eric Biggers [Fri, 27 Jun 2014 23:46:04 +0000 (18:46 -0500)]
doc updates

5 years agoWindows replacement for fopen(path, "a")
Eric Biggers [Thu, 26 Jun 2014 01:03:50 +0000 (20:03 -0500)]
Windows replacement for fopen(path, "a")

5 years agoUse tchar for error file path
Eric Biggers [Thu, 26 Jun 2014 00:47:40 +0000 (19:47 -0500)]
Use tchar for error file path

5 years agowin32_capture.c: Exclude files pending deletion
Eric Biggers [Thu, 26 Jun 2014 00:43:00 +0000 (19:43 -0500)]
win32_capture.c: Exclude files pending deletion

5 years agowimexport: Add --recompress option
Eric Biggers [Wed, 25 Jun 2014 02:48:43 +0000 (21:48 -0500)]
wimexport: Add --recompress option

5 years agoClose error file opened by name
Eric Biggers [Wed, 25 Jun 2014 02:39:08 +0000 (21:39 -0500)]
Close error file opened by name

5 years agowimlib: Allow custom error file
Eric Biggers [Wed, 25 Jun 2014 02:12:44 +0000 (21:12 -0500)]
wimlib: Allow custom error file

5 years agoUse completed_streams and total_streams in extract progress
Eric Biggers [Wed, 25 Jun 2014 01:46:03 +0000 (20:46 -0500)]
Use completed_streams and total_streams in extract progress

5 years agoRemove begin_stream callback flags
Eric Biggers [Wed, 25 Jun 2014 01:13:33 +0000 (20:13 -0500)]
Remove begin_stream callback flags

These aren't used for anything anymore.

5 years agoextract.c: Pass orig stream to callbacks when reading tmpfile
Eric Biggers [Wed, 25 Jun 2014 01:08:39 +0000 (20:08 -0500)]
extract.c: Pass orig stream to callbacks when reading tmpfile

Needed for "WIMBoot" extraction

5 years agowin32_apply.c: Don't use BEGIN_STREAM_STATUS_SKIP_STREAM
Eric Biggers [Tue, 24 Jun 2014 01:04:57 +0000 (20:04 -0500)]
win32_apply.c:  Don't use BEGIN_STREAM_STATUS_SKIP_STREAM

This doesn't work correctly when extracting the stream from a pipe or a
solid block.  Just read the data and don't do anything with it --- at
least this double checks that it's actually valid.

5 years agoextract.c: Send "extract streams" progress at least every 5 MB
Eric Biggers [Tue, 24 Jun 2014 00:47:37 +0000 (19:47 -0500)]
extract.c: Send "extract streams" progress at least every 5 MB

5 years agoAdd experimental support for WIMLIB_PROGRESS_MSG_DONE_WITH_FILE
Eric Biggers [Sun, 22 Jun 2014 04:41:05 +0000 (23:41 -0500)]
Add experimental support for WIMLIB_PROGRESS_MSG_DONE_WITH_FILE

5 years agoUpdate NEWS
Eric Biggers [Sat, 21 Jun 2014 21:09:25 +0000 (16:09 -0500)]
Update NEWS

5 years agoFactor out Win32 => NT path conversion and use in win32_capture.c
Eric Biggers [Sat, 21 Jun 2014 21:06:00 +0000 (16:06 -0500)]
Factor out Win32 => NT path conversion and use in win32_capture.c

5 years agowin32_capture.c: Don't add duplicate backslashes
Eric Biggers [Sat, 21 Jun 2014 21:05:00 +0000 (16:05 -0500)]
win32_capture.c: Don't add duplicate backslashes

5 years agowrite.c: Send "write streams" progress at least every 5 MB
Eric Biggers [Sat, 21 Jun 2014 20:01:09 +0000 (15:01 -0500)]
write.c: Send "write streams" progress at least every 5 MB

This is helpful when writing large archives, especially when the library
user uses the ability to abort the operation.

5 years agoextract.c: Fix for running out of file handles
Eric Biggers [Fri, 20 Jun 2014 04:58:43 +0000 (23:58 -0500)]
extract.c: Fix for running out of file handles

5 years agoUpdate version to v1.7.1-BETA
Eric Biggers [Fri, 20 Jun 2014 00:35:27 +0000 (19:35 -0500)]
Update version to v1.7.1-BETA

5 years agoAllow multiple wimlib_global_init/cleanup per app
Eric Biggers [Fri, 20 Jun 2014 00:32:36 +0000 (19:32 -0500)]
Allow multiple wimlib_global_init/cleanup per app

5 years agosecurity.c: Use int32_t for security IDs
Eric Biggers [Thu, 19 Jun 2014 03:10:34 +0000 (22:10 -0500)]
security.c: Use int32_t for security IDs

5 years agov1.7.0 v1.7.0
Eric Biggers [Tue, 17 Jun 2014 00:28:40 +0000 (19:28 -0500)]
v1.7.0

5 years agoimagex-optimize.1.in: Update LZX compressor note
Eric Biggers [Tue, 17 Jun 2014 01:48:47 +0000 (20:48 -0500)]
imagex-optimize.1.in:  Update LZX compressor note

5 years agoREADME: Update COMPRESSION RATIO section
Eric Biggers [Tue, 17 Jun 2014 01:45:54 +0000 (20:45 -0500)]
README: Update COMPRESSION RATIO section

5 years agosha1-ssse3.asm: Fix building on Windows
Eric Biggers [Mon, 16 Jun 2014 02:49:27 +0000 (21:49 -0500)]
sha1-ssse3.asm:  Fix building on Windows

For some reason the Intel original doesn't actually build for Windows
because it requests too high alignment per section.  It should be
sufficient to retain the alignment directives in the code itself.

5 years agomake-windows-release: Allow multiple extra args to configure
Eric Biggers [Mon, 16 Jun 2014 02:16:14 +0000 (21:16 -0500)]
make-windows-release: Allow multiple extra args to configure

5 years agomake-windows-release: Set VERSION correctly for betas
Eric Biggers [Mon, 16 Jun 2014 02:11:01 +0000 (21:11 -0500)]
make-windows-release: Set VERSION correctly for betas

5 years agoRe-visit SHA-1 code
Eric Biggers [Sun, 15 Jun 2014 16:34:57 +0000 (11:34 -0500)]
Re-visit SHA-1 code

- Fixed build failures when configured with --enable-ssse3-sha1.

- Actually calculate the message digest correctly in the SSSE3-optimized
  version!  The Intel code just does block transformations, not arbitrary
  updates; the previous code did not reflect this.

- Use an appropriate fallback when the CPU does not support SSSE3
  instructions; don't just call abort()!

- Improve sha1_update() and sha1_final().  They should now be slightly
  faster, as well as easier to understand.

- Use beXX_to_cpu() and cpu_to_beXX() macros instead of hard-coding
  endian conversions.

5 years agoavl_tree.c: Remove avl_set_balance_factor()
Eric Biggers [Sun, 15 Jun 2014 05:15:24 +0000 (00:15 -0500)]
avl_tree.c: Remove avl_set_balance_factor()

5 years agoSpeed up LZ77 match copying
Eric Biggers [Sat, 14 Jun 2014 20:44:47 +0000 (15:44 -0500)]
Speed up LZ77 match copying