librsync 1.0.1 (2015-11-21)
Better performance on large files. (VictorDenisov)
Add comment on usage of
rs_build_hash_table(), and assert correct use.
Callers must call
rs_build_hash_table()after loading the signature,
and before calling
Thanks to Paul Harris firstname.lastname@example.org
Switch from autoconf to CMake.
Thanks to Adam Schubert.
Changes in librsync 1.0.0 (2015-01-23)
SECURITY: CVE-2014-8242: librsync previously used a truncated MD4
"strong" check sum to match blocks. However, MD4 is not cryptographically
strong. It's possible that an attacker who can control the contents of one
part of a file could use it to control other regions of the file, if it's
transferred using librsync/rdiff. For example this might occur in a
database, mailbox, or VM image containing some attacker-controlled data.
To mitigate this issue, signatures will by default be computed with a
256-bit BLAKE2 hash. Old versions of librsync will complain about a
bad magic number when given these signature files.
Backward compatibility can be obtained using the new
rdiff sig --hash=md4
option or through specifying the "signature magic" in the API, but
this should not be used when either the old or new file contain
Deltas generated from those signatures will also use BLAKE2 during
generation, but produce output that can be read by old versions.
Thanks to Michael Samuel <miknet.net> for reporting this and offering an
Various build fixes, thanks Timothy Gu.
Improved rdiff man page from Debian.
Improved librsync.spec file for building RPMs.
Fixed bug #1110812 'internal error: job made no progress'; on large
Moved hosting to https://github.com/librsync/librsync/
Travis-CI.org integration test at https://travis-ci.org/librsync/librsync/
Remove bundled copy of popt; it must be installed separately.
You can set
autogen.sh, for example on
OS X Homebrew where it is called