NEWS for rsync 2.5.7 (4 Dec 2003)
Protocol: 26 (unchanged)
Changes since 2.5.6:

  SECURITY FIXES:

    * Fix buffer handling bugs.  (Andrew Tridgell, Martin Pool, Paul
      Russell, Andrea Barisani)


NEWS for rsync 2.5.6, aka "the dwd-between-jobs release" (26 Jan 2003)
Protocol: 26 (unchanged)
Changes since 2.5.5:

  ENHANCEMENTS:

    * The --delete-after option now implies --delete.  (Wayne Davison)

    * The --suffix option can now be used with --backup-dir.  (Michael
      Zimmerman)

    * Combining "::" syntax with the -rsh/-e option now uses the
      specified remote-shell as a transport to talk to a (newly-spawned)
      server-daemon.  This allows someone to use daemon features, such
      as modules, over a secure protocol, such as ssh.  (JD Paul)

    * The rsync:// syntax for daemon connections is now accepted in the
      destination field.

    * If the file name given to --include-from or --exclude-from is "-",
      rsync will read from standard input.  (J.W. Schultz)

    * New option --link-dest which is like --compare-dest except that
      unchanged files are hard-linked in to the destination directory.
      (J.W. Schultz)

    * Don't report an error if an excluded file disappears during an
      rsync run.  (Eugene Chupriyanov and Bo Kersey)

    * Added .svn to --cvs-exclude list to support subversion.  (Jon
      Middleton)

    * Properly support IPv6 addresses in the rsyncd.conf "hosts allow"
      and "hosts deny" fields.  (Hideaki Yoshifuji)

    * Changed exclude file handling to permit DOS or MAC style line
      terminations.  (J.W. Schultz)

    * Ignore errors from chmod when -p/-a/--preserve-perms is not set.
      (Dave Dykstra)

  BUG FIXES:

    * Fix "forward name lookup failed" errors on AIX 4.3.3.  (John
      L. Allen, Martin Pool)

    * Generate each file's rolling-checksum data as we send it, not
      in a separate (memory-eating) pass before hand.  This prevents
      timeout errors on really large files. (Stefan Nehlsen)

    * Fix compilation on Tru64.  (Albert Chin, Zoong Pham)

    * Better handling of some client-server errors.  (Martin Pool)

    * Fixed a crash that would occur when sending a list of files that
      contains a duplicate name (if it sorts to the end of the file
      list) and using --delete.  (Wayne Davison)

    * Fixed the file-name duplicate-removal code when dealing with multiple
      dups in a row. (Wayne Davison)

    * Fixed a bug that caused rsync to lose the exit status of its child
      processes and sometimes return an exit code of 0 instead of showing
      an error.  (David R. Staples, Dave Dykstra)

    * Fixed bug in --copy-unsafe-links that caused it to be completely
      broken.  (Dave Dykstra)

    * Prevent infinite recursion in cleanup code under certain circumstances.
      (Sviatoslav Sviridov and Marc Espie)

    * Fixed a bug that prevented rsync from creating intervening directories
      when --relative-paths/-R is set.  (Craig Barratt)

    * Prevent "Connection reset by peer" messages from Cygwin. (Randy O'Meara)

  INTERNAL:

    * Many code cleanups and improved internal documentation.  (Martin
      Pool, Nelson Beebe)

    * Portability fixes. (Dave Dykstra and Wayne Davison)

    * More test cases.  (Martin Pool)

    * Some test-case fixes.  (Brian Poole, Wayne Davison)

    * Updated included popt to the latest vendor drop, version 1.6.4.
      (Jos Backus)

    * Updated config.guess and config.sub to latest versions; this
      means rsync should build on more platforms.  (Paul Green)


NEWS for rsync 2.5.5, aka Snowy River (2 Apr 2002)
Protocol: 26 (unchanged)
Changes since 2.5.4:

  ENHANCEMENTS:

    * With --progress, when a transfer is complete show the time taken;
      otherwise show expected time to complete. (Cameron Simpson)

    * Make "make install-strip" works properly, and "make install"
      accepts a DESTDIR variable for help in building binary packages.
      (Peter Breitenlohner, Greg Louis)

    * If configured with --enable-maintainer-mode, then on receipt of
      a fatal signal rsync will try to open an xterm running gdb,
      similarly to Samba's "panic action" or GNOME's bug-buddy.
      (Martin Pool)


  BUG FIXES:

    * Fix situation where failure to fork (e.g. because out of process
      slots) would cause rsync to kill all processes owned by the
      current user.  Yes, really!  (Paul Haas, Martin Pool)

    * Fix test suite on Solaris.  (Jos Backus, Martin Pool)

    * Fix minor memory leak in socket code.  (Dave Dykstra, Martin
      Pool.)

    * Fix --whole-file problem that caused it to be the default even
      for remote connections.  (Martin Pool, Frank Schulz)

    * Work around bug in Mac OS X mkdir(2), which cannot handle
      trailing slashes.
      <http://www.opensource.apple.com/bugs/X/BSD%20Kernel/2734739.html>
      (Martin Pool)

    * Improved network error handling.  (Greg A. Woods)


NEWS for rsync 2.5.4, aka "Imitation lizard skin" (13 Mar 2002)
Protocol: 26 (unchanged)
Changes since 2.5.3:

  BUG FIXES:

    * Additional fix for zlib double-free bug.  (Martin Pool, Andrew
      Tridgell) (CVE CAN-2002-0059)

  ENHANCEMENTS:

    * Merge in changes from zlib 1.1.3 to zlib 1.1.4.  (Jos Backus)
      (Note that rsync still uses a custom version of zlib; you can
      not just link against a system library.  See zlib/README.rsync)

    * Additional test cases for --compress.  (Martin Pool)


NEWS for rsync 2.5.3, aka "Happy 26" (11 Mar 2002)
Protocol: 26 (unchanged)
Changes since 2.5.2:

  SECURITY FIXES:

    * Make sure that supplementary groups are removed from a server
      process after changing uid and gid. (Ethan Benson) (Debian bug
      #132272, CVE CAN-2002-0080)

  BUG FIXES:

    * Fix zlib double-free bug.  (Owen Taylor, Mark J Cox) (CVE
      CAN-2002-0059)

    * Fixed problem that in many cases caused the error message
	unexpected read size of 0 in map_ptr
      and resulted in the wrong data being copied.

    * Fixed compilation errors on some systems caused by the use of
      "unsigned int64" in rsync.h.

    * Fixed problem on systems such as Sunos4 that do not support realloc
      on a NULL pointer; error was "out of memory in flist_expand".

    * Fix for rsync server processes hanging around after the client
      unexpectedly disconnects.  (Colin Walters) (Debian bug #128632)

    * Cope with BSD systems on which mkdir() will not accept a trailing
      slash.

  ENHANCEMENTS:

    * Merge in changes from zlib 1.1.2 to zlib 1.1.3.  (Note that
      rsync still uses a custom version of zlib; you can not just link
      against a system library.  See zlib/README.rsync)

    * Command to initiate connections is only shown with -vv, rather
      than -v as in 2.5.2.  Output from plain -v is more similar to
      what was historically used so as not to break scripts that try
      to parse the output.

    * Added --no-whole-file and --no-blocking-io options (Dave Dykstra)

    * Made the --write-batch and --read-batch options actually work
      and added documentation in the man page (Jos Backus)

    * If the daemon is unable to fork a child to accept a connection,
      print an error message.  (Colin Walters)


NEWS for rsync 2.5.2 (26 Jan 2002)
Protocol: 26 (changed)
Changes since 2.5.1:

  SECURITY FIXES:

    * Signedness security patch from Sebastian Krahmer
      <krahmer@suse.de> -- in some cases we were not sufficiently
      careful about reading integers from the network.

  BUG FIXES:

    * Fix possible string mangling in log files.

    * Fix for setting local address of outgoing sockets.

    * Better handling of hardlinks and devices on platforms with
      64-bit dev_t or ino_t.

    * Name resolution on machines supporting IPv6 is improved.

    * Fix for device nodes.  (dann frazier)   (Debian #129135)

  ENHANCEMENTS:

    * With -v, rsync now shows the command used to initiate an ssh/rsh
      connection.

    * --statistics now shows memory heap usage on platforms that
      support mallinfo().

    * "The Ted T'so school of program optimization": make progress
      visible and people will think it's faster.  (With --progress,
      rsync will show you how many files it has seen as it builds the
      file_list, giving some indication that it has not hung.)

    * Improvements to batch mode support.  This is still experimental
      but testing would be welcome.   (Jos Backus)

    * New --ignore-existing option, patch previously distributed with
      Vipul's Razor.  (Debian #124286)


NEWS for rsync 2.5.1 (3 Jan 2002)
Protocol: 25 (unchanged)
Changes since 2.5.0:

  BUG FIXES:

    * Fix for segfault in --daemon mode configuration parser.  (Paul
      Mackerras)

    * Correct string<->address parsing for both IPv4 and 6.
      (YOSHIFUJI Hideaki, SUMIKAWA Munechika and Jun-ichiro "itojun"
      Hagino)

    * Various fixes for IPv6 support.  (Dave Dykstra)

    * rsync.1 typo fix.  (Matt Kraai)

    * Test suite typo fixes.  (Tom Schmidt)

    * rsync.1 grammar and clarity improvements.  (Edward
      Welbourne)

    * Correction to ./configure tests for inet_ntop.  (Jeff Garzik)

  ENHANCEMENTS:

    * --progress and -P now show estimated data transfer rate (in a
      multiple of bytes/s) and estimated time to completion.  (Rik
      Faith)

    * --no-detach option, required to run as a W32 service and also
      useful when running on Unix under daemontools, AIX's SRC, or a
      debugger.  (Max Bowsher, Jos Backus)

    * Clearer error messages for some conditions.


NEWS for rsync 2.5.0 (30 Nov 2001)
Protocol: 25 (changed)
Changes since 2.4.6:

  ANNOUNCEMENTS

    * Martin Pool <mbp@samba.org> is now a co-maintainer.

  NEW FEATURES

    * Support for LSB-compliant packaging <http://www.linuxbase.org/>

    * Shell wildcards are allowed in "auth users" lines.

    * Merged UNC rsync+ patch to support creation of standalone patch
      sets.  By Bert J. Dempsey and Debra Weiss, updated by Jos
      Backus.  <http://www.ils.unc.edu/i2dsi/unc_rsync+.html>

    * IPv6 support based on a patch from KAME.net, on systems
      including modern versions of Linux, Solaris, and HP-UX.  Also
      includes IPv6 compatibility functions for old OSs by the
      Internet Software Consortium, Paul Vixie, the OpenSSH
      portability project, and OpenBSD.

  ENHANCEMENTS

    * Include/exclude cluestick: with -vv, print out whether files are
      included or excluded and why.

    * Many error messages have more friendly explanations and more
      details.

    * Manual page improvements plus scanty protocol documentation.

    * When running as --daemon in the background and using a "log
      file" rsyncd.conf directive, close the log file every time it is
      open when going to sleep on the socket.  This allows the log
      file to get cleaned out by another process.

    * Change to using libpopt rather than getopt for processing
      options.	This makes the code cleaner and the behaviour more
      consistent across platforms.  popt is included and built if not
      installed on the platform.

    * More details in --version, including note about whether 64-bit
      files, symlinks and hardlinks are supported.

    * MD4 code may use less CPU cycles.

    * Use mkstemp on systems where it is secure.  If we use mktemp,
      explain that we do it in a secure way.

    * --whole-file is the default when source and target are on the
	local machine.

  BUG FIXES:

    * Fix for various bugs causing rsync to hang.

    * Attempt to fix Large File Summit support on AIX.

    * Attempt to fix error handling lockup bug.

    * Give a non-0 exit code if *any* of the files we have been asked
      to transfer fail to transfer.

    * For log messages containing ridiculously long strings that might
      overflow a buffer rsync no longer aborts, but rather prints an
      ellipsis at the end of the string.  (Patch from Ed Santiago.)

  PLATFORMS:

    * Improved support for UNICOS (tested on Cray T3E and Cray SV1)

    * autoconf2.52 (or later) is now required to rebuild the autoconf
      scripts.  It is not required to simply build rsync.

    * Platforms thought to work in this release:

		Cray SV1 UNICOS 10.0.0.8 cc
		Debian Linux 2.2 UltraSparc gcc
		Debian Linux testing/unstable ARM gcc
		FreeBSD 3.3-RELEASE i386 cc
		FreeBSD 4.1.1-RELEASE i386 cc
		FreeBSD 4.3-STABLE i386 cc
		HP PA-RISC HP-UX 10.20 gcc
		HP PA-RISC HP-UX 11.11 cc
		IRIX 6.5 MIPS cc
		IRIX 6.5 MIPS gcc
		Mac OS X PPC (--disable-ipv6) cc
		NetBSD 1.5 i386 gcc
		NetBSD Current i386 cc
		OpenBSD 2.5 Sparc gcc
		OpenBSD 2.9 i386 cc
		OpenBSD Current i386 cc
		RedHat 6.2 i386 gcc
		RedHat 6.2 i386 insure++
		RedHat 7.0 i386 gcc
		RedHat 7.1 i386 (Kernel 2.4.10) gcc
		Slackware 8.0 i686 (Kernel 2.4.10)
		Solaris 8 UltraSparc cc
		Solaris 8 UltraSparc gcc
		Solaris 8 i386 gcc
		SuSE 7.1 i386 gcc2.95.2
		SuSE 7.1 ppc gcc2.95.2
		i386-pc-sco3.2v5.0.5 cc
		i386-pc-sco3.2v5.0.5 gcc
		powerpc-ibm-aix4.3.3.0 cc
		i686-unknown-sysv5UnixWare7.1.0 gcc
		i686-unknown-sysv5UnixWare7.1.0 cc

  TESTING:

    * The existing test.sh script by Phil Hands has been merged into a
      test framework that works from both "make check" and the Samba
      build farm.

Partial Protocol History
	RELEASE DATE	VER.	DATE OF COMMIT	PROTOCOL
	01 Jan 2004	2.6.0	10 Apr 2003	27 (MAX=40)
	04 Dec 2003	2.5.7			26
	26 Jan 2003	2.5.6			26
	02 Apr 2002	2.5.5			26
	13 Mar 2002	2.5.4			26
	11 Mar 2002	2.5.3			26
	26 Jan 2002	2.5.2	11 Jan 2002	26
	03 Jan 2002	2.5.1			25
	30 Nov 2001	2.5.0	23 Aug 2001	25
	06 Sep 2000	2.4.6			24
	19 Aug 2000	2.4.5			24
	29 Jul 2000	2.4.4			24
	09 Apr 2000	2.4.3			24
	30 Mar 2000	2.4.2			24
	30 Jan 2000	2.4.1	29 Jan 2000	24
	29 Jan 2000	2.4.0	28 Jan 2000	23
	25 Jan 2000	2.3.3	23 Jan 2000	22
	08 Nov 1999	2.3.2	26 Jun 1999	21
	06 Apr 1999	2.3.1			20
	15 Mar 1999	2.3.0	15 Mar 1999	20
	25 Nov 1998	2.2.1			19
	03 Nov 1998	2.2.0			19
	09 Sep 1998	2.1.1			19
	20 Jul 1998	2.1.0			19
	17 Jul 1998	2.0.19			19
	18 Jun 1998	2.0.17			19
	01 Jun 1998	2.0.16			19
	27 May 1998	2.0.13	27 May 1998	19
	26 May 1998	2.0.12			18
	22 May 1998	2.0.11			18
	18 May 1998	2.0.9	18 May 1998	18
	17 May 1998	2.0.8			17
	15 May 1998	2.0.1			17
	14 May 1998	2.0.0			17
	17 Apr 1998	1.7.4			17
	13 Apr 1998	1.7.3			17
	05 Apr 1998	1.7.2			17
	26 Mar 1998	1.7.1			17
	26 Mar 1998	1.7.0	26 Mar 1998	17 (MAX=30)
	13 Jan 1998	1.6.9	13 Jan 1998	15 (MAX=20)

* DATE OF COMMIT is the date the protocol change was committed to CVS.
