--- - branch: MAIN date: Tue Jun 30 11:56:14 UTC 2020 files: - new: '1.113' old: '1.112' path: pkgsrc/net/rsync/Makefile pathrev: pkgsrc/net/rsync/Makefile@1.113 type: modified - new: '1.8' old: '1.7' path: pkgsrc/net/rsync/PLIST pathrev: pkgsrc/net/rsync/PLIST@1.8 type: modified - new: '1.49' old: '1.48' path: pkgsrc/net/rsync/distinfo pathrev: pkgsrc/net/rsync/distinfo@1.49 type: modified - new: '1.3' old: '1.2' path: pkgsrc/net/rsync/patches/patch-Makefile.in pathrev: pkgsrc/net/rsync/patches/patch-Makefile.in@1.3 type: modified id: 20200630T115614Z.dfb5ac835cec69d84881a6745fb2cdf61ffd0495 log: "rsync: updated to 3.2.1\n\nNEWS for rsync 3.2.1 (22 Jun 2020)\n\nProtocol: 31 (unchanged)\n\nChanges since 3.2.0:\n\nBUG FIXES:\n\nFixed a potential build issue with the MD5 assembly-language code by removing some non-portable directives.\n\nUse the preprocessor with the asm file to ensure that if the code is unneeded, it doesn't get built.\n\nAvoid the stack getting set to executable when including the asm code.\n\nSome improvements in the SIMD configure testing to try to avoid build issues, such as avoiding a clang++ core dump when 窶çµ\x84 is combined with 窶å\x89\x8D2. Note that clang++ is quite buggy in this area, and it does still crash for some folks, so just use 窶é¯\x9B�ç§\x9Fisable-simd if you need to avoid their buggy compiler (since the configure test is apparently not finding all the compilers that will to crash and burn).\n\nFixed an issue in the md2man script when building from an alternate dir.\n\nDisable 窶é¯\x9B�ç\x96\x8Etimes on macOS (it apparently just ignores the atime change).\n\nENHANCEMENTS:\n\nThe use of 窶é¯\x9B�ç¤\x8Eackup-dir=STR now implies 窶é¯\x9B�ç¤\x8Eackup.\n\nAdded 窶é¯\x9B�æ\x83³l=NUM as a short-hand for 窶é¯\x9B�ç¥\x96ompress-level=NUM.\n\nAdded 窶é¯\x9B�ç²\x97arly-input=FILE option that allows the client to send some data to a daemon's (optional) \"early exec\" script on its stdin.\n\nMention atimes in the capabilities list that 窶é¯\x9B�å®\x8Bersion outputs.\n\nMention either \"default protect-args\" or \"optional protect-args\" in the 窶é¯\x9B�å®\x8Bersion capabilities depending on how rsync was configured.\n\nSome info on optimizations is now elided from the 窶é¯\x9B�å®\x8Bersion capabilities since they aren't really user-facing capabilities. You can still see the info (plus the status of a couple extra optimizations) by repeating the 窶é¯\x9B�å®\x8Bersion option (e.g. 窶è\x86³V).\n\nUpdated various URLs to be https instead of http.\n\nSome documentation improvements.\n\nPACKAGING RELATED:\n\nIf you had to use 窶é¯\x9B�ç§\x9Fisable-simd for 3.2.0, you might want to try removing that and see if it will succeed or auto-disable. Some buggy clang++ compilers are still not auto disabled, though.\n\nThe MD5 asm code is now under its own configure flag (not shared with the SIMD setting), so if you have any issues compiling it, re-run configure with 窶é¯\x9B�ç§\x9Fisable-asm.\n\nMerged the OLDNEWS.md file into NEWS.md.\n\nNEWS for rsync 3.2.0 (19 Jun 2020)\n\nProtocol: 31 (unchanged)\n\nChanges since 3.1.3:\n\nBUG FIXES:\n\nAvoid a potential out-of-bounds read in daemon mode if argc can be made to become 0.\n\nFix the default list of skip-compress files for non-daemon transfers.\n\nFix xattr filter rules losing an 'x' attribute in a non-local transfer.\n\nAvoid an error when a check for a potential fuzzy file happens to reference a directory.\n\nMake the atomic-rsync helper script have a more consistent error-exit.\n\nMake sure that a signal handler's use of exit_cleanup() calls _exit() instead of exit().\n\nVarious zlib fixes, including security fixes for CVE-2016-9843, CVE-2016-9842, CVE-2016-9841, and CVE-2016-9840.\n\nFixed an issue with 窶é¯\x9B�å\x96ªemove-source-files not removing a source symlink when combined with 窶é¯\x9B�ç¥\x96opy-links.\n\nFixed a bug where the daemon would fail to write early fatal error messages to the client, such as refused or unknown command-line options.\n\nFixed the block-size validation logic when dealing with older protocols.\n\nSome rrsync fixes and enhancements to handle the latest options.\n\nFixed a problem with the 窶é¯\x9B�鼠ink-dest|窶é¯\x9B�ç¥\x96opy-dest code when 窶é¯\x9B�å\x8C\x9Dattrs was specified along with multiple alternate-destination directories (it could possibly choose a bad file match while trying to find a better xattr match).\n\nFixed a couple bugs in the handling of files with the 窶é¯\x9B�壮parse option.\n\nFixed a bug in the writing of the batch.sh file (w/窶é¯\x9B�層rite-batch) when the source & destination args were not last on the command-line.\n\nAvoid a hang when an overabundance of messages clogs up all the I/O buffers.\n\nFixed a mismatch in the RSYNC_PID values put into the environment of pre-xfer exec and a post-xfer exec.\n\nFixed a crash in the 窶é¯\x9B�訴conv code.\n\nFixed a rare crash in the popt_unalias() code.\n\nENHANCEMENTS:\n\nVarious checksum enhancements, including the optional use of openssl's MD4 & MD5 checksum algorithms, some x86-64 optimizations for the rolling checksum, some x86-64 optimizations for the (non-openssl) MD5 checksum, the addition of xxHash checksum support, and a negotiation heuristic that ensures that it is easier to add new checksum algorithms in the future. The environment variable RSYNC_CHECKSUM_LIST can be used to customize the preference order of the negotiation, or use 窶é¯\x9B�ç¥\x96hecksum-choice (窶é¯\x9B�ç¥\x96c) to force a choice.\n\nVarious compression enhancements, including the addition of zstd and lz4 compression algorithms and a negotiation heuristic that picks the best compression option supported by both sides. The environment variable RSYNC_COMPRESS_LIST can be used to customize the preference order of the negotiation, or use 窶é¯\x9B�ç¥\x96ompress-choice (窶é¯\x9B�æ\x83³c) to force a choice.\n\nAdded a 窶é¯\x9B�ç§\x9Febug=NSTR option that outputs details of the new negotiation strings (for checksums and compression). The first level just outputs the result of each negotiation on the client, level 2 outputs the values of the strings that were sent to and received from the server, and level 3 outputs all those values on the server side too (when the server was given the debug option).\n\nThe 窶é¯\x9B�ç§\x9Febug=OPTS command-line option is no longer auto-forwarded to the remote rsync which allows for the client and server to have different levels of debug specified. This also allows for newer debug options to be specified, such as using 窶é¯\x9B�ç§\x9Febug=NSTR to see the negotiated hash result, without having the command fail if the server version is too old to handle that debug item. Use 窶é\x96\x83窶é¯\x9B�ç§\x9Febug=OPTS to send the options to the remote side.\n\nAdded the 窶é¯\x9B�ç\x96\x8Etimes option based on the long-standing patch (just with some fixes that the patch has been needing).\n\nAdded 窶é¯\x9B�å\x8F\x8Cpen-noatime option to open files using O_NOATIME.\n\nAdded the 窶é¯\x9B�層rite-devices option based on the long-standing patch.\n\nAdded openssl & preliminary gnutls support to the rsync-ssl script, which is now installed by default. This was unified with the old stunnel-rsync helper script to simplify packaging. Note that the script accepts the use of 窶é¯\x9B�å¥\x8Fype=gnutls for gnutls testing, but does not look for gnutls-cli on the path yet. The use of 窶é¯\x9B�å¥\x8Fype=gnutls will not work right until gnutls-cli no longer drops data.\n\nRsync was enhanced to set the RSYNC_PORT environment variable when running a daemon-over-rsh script. Its value is the user-specified port number (set via 窶é¯\x9B�å\x8F¢ort or an rsync:// URL) or 0 if the user didn't override the port.\n\nAdded the proxy protocol daemon parameter that allows your rsyncd to know the real remote IP when it is setup behind a proxy.\n\nAdded negated matching to the daemon's refuse options setting by using match strings that start with a ! (such as !compress*). This lets you refuse all options except for a particular approved list, for example. It also lets rsync refuse certain options by default (such as write-devices) while allowing the config to override that, as desired.\n\nAdded the early exec daemon parameter that runs a script before the transfer parameters are known, allowing some early setup based on module name.\n\nAdded status output in response to a signal (via both SIGINFO & SIGVTALRM).\n\nAdded 窶é¯\x9B�ç¥\x96opy-as=USER option to give some extra security to root-run rsync commands into/from untrusted directories (such as backups and restores).\n\nWhen resuming the transfer of a file in the 窶é¯\x9B�å\x8F¢artial-dir, rsync will now update that partial file in-place instead of creating yet another tmp file copy. This requires both sender & receiver to be at least v3.2.0.\n\nAdded support for RSYNC_SHELL & RSYNC_NO_XFER_EXEC environment variables that affect the early, pre-xfer, and post-xfer exec rsync daemon parameters.\n\nOptimize the 窶é¯\x9B�素uzzy 窶é¯\x9B�素uzzy heuristic to avoid the fuzzy directory scan until all other basis-file options are exhausted (such as 窶é¯\x9B�鼠ink-dest).\n\nHave the daemon log include the normal-exit sent/received stats when the transfer exited with an error when possible (i.e. if it is the sender).\n\nThe daemon now locks its pid file (when configured to use one) so that it will not fail to start when the file exists but no daemon is running.\n\nVarious man page improvements, including some html representations (that aren't installed by default).\n\nMade 窶è\x86³ the short option for 窶é¯\x9B�å®\x8Bersion and improved its information.\n\nPass the 窶�4 or 窶�6 option to the ssh command, making it easier to type than 窶é¯\x9B�å\x96ªsh='ssh 窶�4' (or the 窶�6 equivalent).\n\nAdded example config for rsyncd SSL proxy configs to rsyncd.conf.\n\nMore errors messages now mention if the error is coming from the sender or the receiver.\n\nPACKAGING RELATED:\n\nAdd installed binary: /usr/bin/rsync-ssl\n\nAdd installed man page: /usr/man/man1/rsync-ssl.1\n\nTweak auxiliary doc file names, such as: README.md, INSTALL.md, & NEWS.md.\n\nThe rsync-ssl script wants to run openssl or stunnel4, so consider adding a dependency for one of those options (though it's probably fine to just let it complain about being unable to find the program and let the user decide if they want to install one or the other).\n\nIf you packaged rsync + rsync-ssl + rsync-ssl-daemon as separate packages, the rsync-ssl package is now gone (rsync-ssl should be considered to be mainstream now that Samba requires SSL for its rsync daemon).\n\nAdd build dependency for liblz4-dev, libxxhash-dev, libzstd-dev, and libssl-dev. These development libraries will give rsync extra compression algorithms, extra checksum algorithms, and allow use of openssl's crypto lib for (potentially) faster MD4/MD5 checksums.\n\nAdd build dependency for g++ or clang++ on x86_64 systems to enable the SIMD checksum optimizations.\n\nAdd build dependency for either python3-cmarkcfm or python3-commonmark to allow for patching of man pages or building a git release. This is not required for a release-tar build, since it comes with pre-built man pages. Note that cmarkcfm is faster than commonmark, but they generate the same data. The commonmark dependency is easiest to install since it's native python, and can even be installed via pip3 install 窶é¯\x9B�ç\x88½ser commonmark if you want to just install it for the build user.\n\nRemove yodl build dependency (if it was even listed before).\n\nDEVELOPER RELATED:\n\nSilenced some annoying warnings about major() & minor() by improving an autoconf include-file check.\n\nConverted the man pages from yodl to markdown. They are now processed via a simple python3 script using the cmarkgfm or commonmark library. This should make it easier to package rsync, since yodl has gotten obscure.\n\nImproved some configure checks to work better with strict C99 compilers.\n\nSome perl building/packaging scripts were recoded into awk and python3.\n\nSome defines in byteorder.h were changed into static inline functions that will help to ensure that the args don't get evaluated multiple times on \"careful alignment\" hosts.\n\nSome code typos were fixed (as pointed out by a Fossies run).\n" module: pkgsrc subject: 'CVS commit: pkgsrc/net/rsync' unixtime: '1593518174' user: adam