- - Fixed a bug in the exclude code where an anchored exclude without any
- wildcards fails to match an absolute source arg, but only when --relative
- is in effect.
-
- - Improved the I/O code for the generator to fix a potential hang when the
- receiver gets an EOF on the socket but the generator's select() call
- never indicates that the socket is writable for it to be notified about
- the EOF. (This can happen when using stunnel).
-
- - Fixed a problem with the file-reading code where a failed read (such as
- that caused by a bad sector) would not advance the file's read-position
- beyond the failed read's data.
-
- - Fixed a logging bug where the "log file" directive was not being honored
- in a single-use daemon (one spawned by a remote-shell connection or by
- init).
-
- - If rsync cannot honor the --delete option, we output an error and exit
- instead of silently ignoring the option.
-
- - Fixed a bug in the --link-dest code that prevented special files (such as
- fifos) from being linked.
-
- - The ability to hard-link symlinks and special files is now determined at
- configure time instead of at runtime. This fixes a bug with --link-dest
- creating a hard-link to a symlink's referent on a BSD system.
+ - Fixed the sanitizing of acceptable ../ dirs in 2 cases where an rsync
+ daemon is receiving files when "use chroot" is not enabled and the
+ destination dir is not at the top of the module's path: both the value
+ of a symlink and the arg of the --FOO-dest options (i.e. --link-dest,
+ --copy-dest, and --compare-dest) now know how deep the destination dir
+ is in the module, and allow a safe number of ../ references instead of
+ preventing the references from leaving the destination hierarchy (use
+ the age-old --safe-links for that behavior).
+
+ - Fixed a bug where a deferred info/error/log message could get sent
+ directly to the sender instead of being handled by rwrite() in the
+ generator. This fixes an "unexpected tag 3" fatal error, and should
+ also fix a potential problem where a deferred info/error message from
+ the receiver might bypass the log file and get sent only to the client
+ process. (These problems could only affect an rsync daemon that was
+ receiving files.)
+
+ - Make sure that the --link-dest option can still do its job even when -I
+ or --size-only is specified.