-NEWS for rsync 2.6.3 (UNRELEASED)
-Protocol: 28 (unchanged)
-Changes since 2.6.2:
-
- SECURITY FIXES:
-
- - A bug in the sanitize_path routine (which affects a non-chrooted
- rsync daemon) could allow a user to craft a pathname that would get
- transformed into an absolute path for certain options (but not for
- file-transfer names). If you're running an rsync daemon with chroot
- disabled, *please upgrade*, ESPECIALLY if the user privs you run
- rsync under is anything above "nobody".
-
- OUTPUT CHANGES (ATTN: those using a script to parse the verbose output):
-
- - Please note that the 2-line footer (output when verbose) now uses the
- term "sent" instead of "wrote" and "received" instead of "read". If
- you are not parsing the numeric values out of this footer, a script
- would be better off using the empty line prior to the footer as the
- indicator that the verbose output is over.
-
- - The output from the --stats option was similarly affected to change
- "written" to "sent" and "read" to "received".
-
- - Rsync ensures that a filename that contains a newline gets mentioned
- with each newline transformed into a question mark (which prevents a
- filename from causing an empty line to be output).
+NEWS for rsync 2.6.7 (11 Mar 2006)
+
+Protocol: 29 (unchanged)
+Changes since 2.6.6:
+
+ OUTPUT CHANGES:
+
+ - The letter 'D' in the itemized output was being used for both devices
+ (character or block) as well as other special files (such as fifos and
+ named sockets). This has changed to separate non-device special files
+ under the 'S' designation (e.g. "cS+++++++ path/fifo"). See also the
+ "--specials" option, below.
+
+ - The way rsync escapes unreadable characters has changed. First, rsync
+ now has support for recognizing valid multibyte character sequences in
+ your current locale, allowing it to escape fewer characters than before
+ for a locale such as UTF-8. Second, it now uses an escape idiom of
+ "\#123", which is the literal string "\#" followed by exactly 3 octal
+ digits. Rsync no longer doubles a backslash character in a filename
+ (e.g. it used to output "foo\\bar" when copying "foo\bar") -- now it only
+ escapes a backslash that is followed by a hash-sign and 3 digits (0-9)
+ (e.g. it will output "foo\#134#789" when copying "foo\#789"). See also
+ the --8-bit-output (-8) option, mentioned below.
+
+ Script writers: the local rsync is the one that outputs escaped names,
+ so if you need to support unescaping of filenames for older rsyncs, I'd
+ suggest that you parse the output of "rsync --version" and only use the
+ old unescaping rules for 2.6.5 and 2.6.6.