Mention the latest --log-* option changes.
[rsync/rsync.git] / NEWS
1 NEWS for rsync 2.6.9 (unreleased)
2 Protocol: 29 (unchanged)
3 Changes since 2.6.8:
4
5   BUG FIXES:
6
7     - An rsync daemon that is receiving files with "use chroot = no" no longer
8       sanitizes the symlink target strings.  This means that each symlink's
9       value will now be accepted (and thus returned) with its symlink info
10       intact.  Also, in order to keep things safe, all arg paths and any
11       dereferenced symlinks (e.g. via --copy-links or --keep-dirlinks) are
12       manually verified to ensure that no symlinks try to escape past the top
13       of the module's path.  These changes make a non-chroot daemon behave the
14       same way as a chroot daemon with regard to symlinks, and also avoids a
15       potential problem where a pre-existing symlink could have escaped the
16       module's hierarchy.
17
18     - Fixed an overzealous sanitizing bug in the handling of the --link-dest,
19       --copy-dest, and --compare-dest options to a daemon without chroot: if
20       the copy's destination dir is deeper than the top of the module's path,
21       these options now accept a safe number of ../ (parent-dir) references
22       (since these options are relative to the destination dir).  The old code
23       incorrectly chopped off all "../" prefixes for these options, no matter
24       how deep the destination directory was in the module's hierarchy.
25
26     - Fixed a bug where a deferred info/error/log message could get sent
27       directly to the sender instead of being handled by rwrite() in the
28       generator.  This fixes an "unexpected tag 3" fatal error, and should
29       also fix a potential problem where a deferred info/error message from
30       the receiver might bypass the log file and get sent only to the client
31       process.  (These problems could only affect an rsync daemon that was
32       receiving files.)
33
34     - Make sure that the --link-dest option can still do its job even when -I
35       is specified.
36
37     - If --link-dest is specified with --checksum but without --times, rsync
38       will now allow a hard-link to be created to a matching link-dest file
39       regardless of the file's modify-time.
40
41     - The daemon now calls more timezone-using functions prior to doing a
42       chroot.  This should help some C libraries to generate proper timestamps
43       from inside a chrooted daemon (and to not try to access /etc/timezone
44       over and over again).
45
46     - Fixed a bug in the handling of an absolute --partial-dir=ABS_PATH option:
47       it now deletes an alternate basis file from the partial-dir that was used
48       to successfully update a destination file.
49
50   ENHANCEMENTS:
51
52     - Added the --log-file=FILE and --log-file-format=FORMAT options.  These
53       can be used to tell any rsync to output what it is doing to a log file.
54       They work with a client rsync, a non-daemon server rsync (see the man
55       page for instructions), and also allows the overriding of rsyncd.conf
56       settings when starting a daemon.
57
58     - The --log-format option was renamed to be --out-format to avoid confusing
59       it with affecting the log-file output.  (The old option remains as an
60       alias for the new to preserve backward compatibility.)
61
62   DEVELOPER RELATED:
63
64     - The acls.diff and xattrs.diff patches have received a bunch of work to
65       make them much closer to being acceptable in the main distribution.
66
67     - Updated config.guess and config.sub to their 2006-02-23 version.
68
69     - Updated various files to include the latest FSF address and to have
70       consistent opening comments.