On 1/19/26 11:35 AM, G.W. Haywood wrote:
Hi there,

As mentioned in another thread, I think the release of the next
version of rsync-bpc - version 3.4.1.0rc1 - is approaching.

As its version number implies, this version is based on the latest upstream rsync, version 3.4.1.  That version contains a number of improvements plus a few fixes for vulnerabilites.  Vulnerabilities have been found in supporting packages such as zlib and popt.  For whatever reasons, many packages (not just rsync and BackupPC) bundled the code for these libraries in their own source distributions. The problem with doing that, of course, is that the bundled versions tend to get out of date which is what happened for rsync, BackupPC-XS and rsync-bpc although the resulting issues were fortunately not serious.
It could easily have been otherwise.

As for BackupPC-XS, the new version of rsync-bpc does away with the bundled zlib and popt code, instead relying on the system to provide these libraries.  If the distribution's security teams and your update practice are up to snuff, then these paths to vulnerability should be
closed off for good.

This has been quite a journey and I'm asking for volunteers, to begin
with, to sanity-check what I've done.

The changes to the rsync-bpc code have been very extensive (think in terms of a context diff with a line count well into five digits) so I really do want to get people to put this thing under the microscope. It will help enormously if you're a proficient 'C' coder but it isn't an absolute requirement; just building and testing by anyone will be more than welcome.  Running here, it's just done its first incremental backup after four fulls for just one share on just one machine. I'll be adding to that population in the coming days.  So far I only built on one architecture (armhf).  Anything could happen on a 64-bit box,
the data structures in rsync are truly scary.

There are still a couple of outstanding issues which I want to look
into, and I'll be glad of any comments from users:

1. While testing on a box with usually ~3G spare memory, I noticed a tendency for one of the rsync-bpc processes to use it all up and then crash.  After I'd removed most of my debugging (gigabyte+ log files) this seemed to go away, but I'm reminded of Github issue #547 and I think it needs a bit more investigation.  Also in the coming days I plan to do that.  I know where to look and what to log, I just don't yet know if having a bunch of 8 MByte file buffers in RAM is an issue.

2. The latest version of rsync offers extra options for checksumming, and that seemed to throw off the new rsync-bpc's use of MD5 for file comparisons.  My very klundgy fix for that has been to add the rsync '--checksum-choice=md5' option to $Conf{RsyncArgs} but I'd much prefer to look at modifying the code to force the use of the right checksums without requiring any changes to the configuration.  At this stage I don't know what this might mean for people using e.g. 'openrsync' on the Mac - I don't know if the Mac's rsync recognizes the option - and I don't know if it will be an issue for people using very old versions of 'genuine' rsync on other clients.  If there are Mac users Out There reading, *please* help me with the testing if you can.  If your rsync
version _is_ very old, I promise not to tell.

At this stage, rather than putting something on Github which may quite possibly crash and burn, I'd prefer to email the source to volunteers.

Any takers?

I'd be happy to give it a shot. You have my email so send a "tar.gz" when ready.

--
Jim KR


_______________________________________________
BackupPC-users mailing list
[email protected]
List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki:    https://github.com/backuppc/backuppc/wiki
Project: https://backuppc.github.io/backuppc/

Reply via email to