mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-01-24 23:08:24 -05:00
116 lines
4.8 KiB
Markdown
116 lines
4.8 KiB
Markdown
# NEWS for rsync 3.2.0 (UNRELEASED)
|
|
|
|
Protocol: 31 (unchanged)
|
|
|
|
## Changes since 3.1.3:
|
|
|
|
### BUG FIXES:
|
|
|
|
- Avoid a potential out-of-bounds read in daemon mode if argc can be made to
|
|
become 0.
|
|
|
|
- Fix the default list of skip-compress files for non-daemon transfers.
|
|
|
|
- Fix xattr filter rules losing an 'x' attribute in a non-local transfer.
|
|
|
|
- Avoid an error when a check for a potential fuzzy file happens to reference
|
|
a directory.
|
|
|
|
- Make the atomic-rsync helper script have a more consistent error-exit.
|
|
|
|
- Make sure that a signal handler calls `_exit()` instead of exit().
|
|
|
|
- Various zlib fixes, including security fixes for CVE-2016-9843,
|
|
CVE-2016-9842, CVE-2016-9841, and CVE-2016-9840.
|
|
|
|
- Fixed an issue with `--remove-source-files` not removing a source symlink
|
|
when combined with `--copy-links`.
|
|
|
|
- Fixed a bug where the daemon would fail to write early fatal error messages
|
|
to the client, such as refused or unknown command-line options.
|
|
|
|
- Fixed the block-size validation logic when dealing with older protocols.
|
|
|
|
- Some rrsync fixes and enhancements to handle the latest options.
|
|
|
|
- Fixed a crash in the `--iconv` code.
|
|
|
|
- Fixed a bug in the writing of the batch.sh file (w/--write-batch) when the
|
|
source & destination args were not last on the command-line.
|
|
|
|
### ENHANCEMENTS:
|
|
|
|
- Various checksum enhancements, including the optional use of openssl's MD4 &
|
|
MD5 checksum algorithms, some x86-64 optimizations for the rolling checksum,
|
|
some x86-64 optimizations for the (non-openssl) MD5 checksum, the addition
|
|
of xxhash checksum support, and a negotiation heuristic that ensures that it
|
|
is easier to add new checksum algorithms in the future. Currently the
|
|
x86-64 optimizations require the use of the `--enable-simd` flag to
|
|
configure, but they will probably be enabled by default in the near future.
|
|
The environment variable `RSYNC_CHECKSUM_LIST` can be used to customize the
|
|
preference order of the negotiation.
|
|
|
|
- Various compression enhancements, including a negotiation heuristic that
|
|
tries to pick the best compression option supported by both sides. The
|
|
environment variable `RSYNC_COMPRESS_LIST` can be used to customize the
|
|
preference order of the heuristic (which will be more useful when new
|
|
compression options are added).
|
|
|
|
- Added the `--atimes` option based on the long-standing patch (just with some
|
|
fixes that the patch has been needing).
|
|
|
|
- Added `--open-noatime` option to open files using `O_NOATIME`.
|
|
|
|
- Added the `--write-devices` option based on the long-standing patch.
|
|
|
|
- Added openssl support to the rsync-ssl script via its renamed helper script,
|
|
rsync-ssl-rsh. Both bash scripts are now installed by default (removing the
|
|
install-ssl-client make target). Rsync was also enhanced to set the
|
|
`RSYNC_PORT` environment variable when running a daemon-over-rsh script. Its
|
|
value is the user-specified port number (set via `--port` or an rsync://
|
|
URL) or 0 if the user didn't override the port.
|
|
|
|
- Added negated matching to the daemon's `refuse options` setting by using
|
|
match strings that start with a `!` (such as `!compress*`).
|
|
|
|
- Added status output in response to a signal (via both SIGINFO & SIGVTALRM).
|
|
|
|
- Added a `--copy-as=USER` option to give some extra security to root-run
|
|
rsync commands into/from untrusted directories (such as backups and
|
|
restores).
|
|
|
|
- When resuming the transfer of a file in the `--partial-dir`, rsync will now
|
|
update that partial file in-place instead of creating yet another tmp file
|
|
copy. This requires both sender & receiver to be at least v3.2.0.
|
|
|
|
- Added support for `RSYNC_SHELL` & `RSYNC_NO_XFER_EXEC` environment variables
|
|
that affect the pre-xfer exec and post-xfer exec rsync daemon options.
|
|
|
|
- Fixed a problem with the `--link-dest`|`--copy-dest` code when `--xattrs`
|
|
was specified along with multiple alternate-destination directories (it
|
|
could possibly choose a bad file match while trying to find a better xattr
|
|
match).
|
|
|
|
- Various manpage improvements.
|
|
|
|
### DEVELOPER RELATED:
|
|
|
|
- Silenced some annoying warnings about major()|minor() due to the autoconf
|
|
include-file check not being smart enough.
|
|
|
|
- Improved some configure checks to work better with strict C99 compilers.
|
|
|
|
- The `--debug=FOO` options are no longer auto-forwarded to the server side,
|
|
allowing more control over what is output & the ability to request debug
|
|
data from divergent rsync versions.
|
|
|
|
- Some perl scripts were recoded into awk and python3.
|
|
|
|
- Some defines in byteorder.h were changed into static inline functions that
|
|
will help to ensure that the args don't get evaluated multiple times on
|
|
`careful alignment` hosts.
|
|
|
|
- Some code typos were fixed (as pointed out by a Fossies run).
|
|
|
|
------------------------------------------------------------------------------
|