rsync.git
3 weeks agoPreparing for release of 3.3.0 [buildall] v3.3.0
Wayne Davison [Sat, 6 Apr 2024 16:30:21 +0000 (09:30 -0700)]
Preparing for release of 3.3.0 [buildall]

3 weeks agoSome year updates.
Wayne Davison [Sat, 6 Apr 2024 16:21:44 +0000 (09:21 -0700)]
Some year updates.

3 weeks agoMention latest changes in NEWS.
Wayne Davison [Sat, 6 Apr 2024 16:17:16 +0000 (09:17 -0700)]
Mention latest changes in NEWS.

3 weeks agoexclude: fix crashes with fortified strlcpy()
Jiri Slaby [Fri, 18 Aug 2023 06:26:20 +0000 (08:26 +0200)]
exclude: fix crashes with fortified strlcpy()

Fortified (-D_FORTIFY_SOURCE=2 for gcc) builds make strlcpy() crash when
its third parameter (size) is larger than the buffer:
  $ rsync -FFXHav '--filter=merge global-rsync-filter' Align-37-43/ xxx
  sending incremental file list
  *** buffer overflow detected ***: terminated

It's in the exclude code in setup_merge_file():
  strlcpy(y, save, MAXPATHLEN);

Note the 'y' pointer was incremented, so it no longer points to memory
with MAXPATHLEN "owned" bytes.

Fix it by remembering the number of copied bytes into the 'save' buffer
and use that instead of MAXPATHLEN which is clearly incorrect.

Fixes #511.

3 weeks agotypo in rsyncd.conf.5.md
Grant Gardner [Sun, 17 Mar 2024 03:00:16 +0000 (14:00 +1100)]
typo in rsyncd.conf.5.md

10 months agoMake `--max-alloc=0` safer.
Wayne Davison [Tue, 27 Jun 2023 16:01:15 +0000 (09:01 -0700)]
Make `--max-alloc=0` safer.

Always do size checking in my_alloc(), even for `--max-alloc=0`.

11 months agoConvert mnt-excl into python.
Wayne Davison [Mon, 22 May 2023 15:29:15 +0000 (08:29 -0700)]
Convert mnt-excl into python.

11 months agoFix old stats bug that counted devices as symlinks.
Wayne Davison [Wed, 17 May 2023 05:44:54 +0000 (22:44 -0700)]
Fix old stats bug that counted devices as symlinks.

11 months agoA couple more NEWS improvements.
Wayne Davison [Thu, 4 May 2023 15:56:10 +0000 (08:56 -0700)]
A couple more NEWS improvements.

11 months agoMention updated config files.
Wayne Davison [Thu, 4 May 2023 15:45:42 +0000 (08:45 -0700)]
Mention updated config files.

11 months agoupdate config.guess config.sub (#478)
zhangwenlong [Thu, 4 May 2023 15:41:52 +0000 (23:41 +0800)]
update config.guess config.sub (#478)

- curl -sL -o config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'
- curl -sL -o config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'

Signed-off-by: Wenlong Zhang <zhangwenlong@loongson.cn>
12 months agoA couple spelling tweaks; tweak order.
Wayne Davison [Mon, 1 May 2023 00:28:50 +0000 (17:28 -0700)]
A couple spelling tweaks; tweak order.

12 months agoPreparing for release of 3.3.0pre1 [buildall] v3.3.0pre1
Wayne Davison [Sat, 29 Apr 2023 16:01:43 +0000 (09:01 -0700)]
Preparing for release of 3.3.0pre1 [buildall]

12 months agoUpdate the NEWS.
Wayne Davison [Sat, 29 Apr 2023 15:52:42 +0000 (08:52 -0700)]
Update the NEWS.

12 months agoMention that `--crtimes` support is spotty.
Wayne Davison [Sat, 29 Apr 2023 15:20:30 +0000 (08:20 -0700)]
Mention that `--crtimes` support is spotty.

12 months agoFix issue with trailing --sparse --inplace blocks.
Wayne Davison [Sat, 29 Apr 2023 14:45:52 +0000 (07:45 -0700)]
Fix issue with trailing --sparse --inplace blocks.
Fixes #450.

12 months agoAdd --force-link-text to md-convert.
Wayne Davison [Sun, 23 Apr 2023 15:26:32 +0000 (08:26 -0700)]
Add --force-link-text to md-convert.

12 months agoFix overflow of sum2 buffer for sha1 rolling checksums.
Wayne Davison [Sat, 22 Apr 2023 15:49:48 +0000 (08:49 -0700)]
Fix overflow of sum2 buffer for sha1 rolling checksums.
Fixed #353.

12 months agoMake use of .UR & .UE for links.
Wayne Davison [Sat, 22 Apr 2023 15:37:01 +0000 (08:37 -0700)]
Make use of .UR & .UE for links.

13 months agoTweak shell protection news to mention a few more characters.
Wayne Davison [Thu, 30 Mar 2023 19:56:33 +0000 (12:56 -0700)]
Tweak shell protection news to mention a few more characters.

13 months agoadd rrsync option to enforce `--ignore-existing` (#461)
dogvisor [Thu, 30 Mar 2023 19:55:56 +0000 (21:55 +0200)]
add rrsync option to enforce `--ignore-existing` (#461)

The `-no-overwrite` rrsync option disallows the updating of existing files for incoming rrsync copies.

14 months agoFix flist string comparison issue in tr_TR.utf-8 locale.
Wayne Davison [Mon, 6 Feb 2023 03:46:45 +0000 (19:46 -0800)]
Fix flist string comparison issue in tr_TR.utf-8 locale.

15 months agoDon't call memcmp() on an empty lastdir.
Wayne Davison [Mon, 9 Jan 2023 05:35:39 +0000 (21:35 -0800)]
Don't call memcmp() on an empty lastdir.

15 months agoAdd backtick to SHELL_CHARS.
Wayne Davison [Thu, 5 Jan 2023 05:52:48 +0000 (21:52 -0800)]
Add backtick to SHELL_CHARS.

17 months agoTrust the sender on a local transfer.
Wayne Davison [Fri, 2 Dec 2022 04:16:51 +0000 (20:16 -0800)]
Trust the sender on a local transfer.

17 months agoA couple manpage links.
Wayne Davison [Wed, 23 Nov 2022 15:58:43 +0000 (07:58 -0800)]
A couple manpage links.

17 months agoImprove [global] module documentation.
Wayne Davison [Wed, 23 Nov 2022 06:55:52 +0000 (22:55 -0800)]
Improve [global] module documentation.

17 months agoDuplicate argv data before poptFreeContext().
Wayne Davison [Wed, 23 Nov 2022 05:00:04 +0000 (21:00 -0800)]
Duplicate argv data before poptFreeContext().

17 months agoAnother python conversion.
Wayne Davison [Sun, 20 Nov 2022 17:38:12 +0000 (09:38 -0800)]
Another python conversion.

17 months agoConvert a few more scripts to python3.
Wayne Davison [Wed, 16 Nov 2022 08:06:05 +0000 (00:06 -0800)]
Convert a few more scripts to python3.

17 months agoTweak an older NEWS item to be a bit clearer.
Wayne Davison [Thu, 10 Nov 2022 00:04:02 +0000 (16:04 -0800)]
Tweak an older NEWS item to be a bit clearer.

17 months agoAvoid quoting of tilde when it's a destination arg.
Wayne Davison [Sat, 5 Nov 2022 16:14:33 +0000 (09:14 -0700)]
Avoid quoting of tilde when it's a destination arg.

17 months agoUpgrade verion of actions.
Wayne Davison [Thu, 3 Nov 2022 06:54:41 +0000 (23:54 -0700)]
Upgrade verion of actions.

18 months agoCheck for EVP_MD_CTX_copy in crypto lib instead of MD5_Init.
Wayne Davison [Wed, 26 Oct 2022 04:55:53 +0000 (21:55 -0700)]
Check for EVP_MD_CTX_copy in crypto lib instead of MD5_Init.

18 months agoCall `OpenSSL_add_all_algorithms()` on older openssl versions.
Wayne Davison [Tue, 25 Oct 2022 16:02:05 +0000 (09:02 -0700)]
Call `OpenSSL_add_all_algorithms()` on older openssl versions.

18 months agoInit the checksum choices before the daemon auth.
Wayne Davison [Tue, 25 Oct 2022 15:55:07 +0000 (08:55 -0700)]
Init the checksum choices before the daemon auth.

18 months agoFix protocol <= 29 daemon auth if openssl is handling md4.
Wayne Davison [Mon, 24 Oct 2022 15:38:00 +0000 (08:38 -0700)]
Fix protocol <= 29 daemon auth if openssl is handling md4.

18 months agoCygwin needs stdout flushed. [buildall]
Wayne Davison [Sat, 22 Oct 2022 19:04:06 +0000 (12:04 -0700)]
Cygwin needs stdout flushed. [buildall]

18 months agoPreparing for release of 3.2.7 [buildall] v3.2.7
Wayne Davison [Fri, 21 Oct 2022 00:57:22 +0000 (17:57 -0700)]
Preparing for release of 3.2.7 [buildall]

18 months agoImprove JSON output a bit more.
Wayne Davison [Thu, 20 Oct 2022 17:54:14 +0000 (10:54 -0700)]
Improve JSON output a bit more.

18 months agoMake use of -VV when checking rsync capabilities.
Wayne Davison [Thu, 20 Oct 2022 16:02:28 +0000 (09:02 -0700)]
Make use of -VV when checking rsync capabilities.

18 months agoRe-run the exclude test using lsh.sh pull.
Wayne Davison [Thu, 20 Oct 2022 02:18:20 +0000 (19:18 -0700)]
Re-run the exclude test using lsh.sh pull.

The exclude.test file continues to run local copies (which are a special
kind of "push") while the exclude-lsh.test symlink runs a a "pull" using
the lsh.sh script as the "remote" shell.

18 months agoImprove `--mkpath` a bit more.
Wayne Davison [Sun, 16 Oct 2022 19:23:39 +0000 (12:23 -0700)]
Improve `--mkpath` a bit more.

18 months agoInclude "buildall" flag in the release commit.
Wayne Davison [Sun, 16 Oct 2022 19:14:37 +0000 (12:14 -0700)]
Include "buildall" flag in the release commit.

18 months agoYet another manpage tweak.
Wayne Davison [Sun, 16 Oct 2022 19:04:22 +0000 (12:04 -0700)]
Yet another manpage tweak.

18 months agoFix version verification when "\|" doesn't work in sed.
Wayne Davison [Sun, 16 Oct 2022 18:14:15 +0000 (11:14 -0700)]
Fix version verification when "\|" doesn't work in sed.

18 months agoSilence autoconf warnings.
Wayne Davison [Sun, 16 Oct 2022 17:28:58 +0000 (10:28 -0700)]
Silence autoconf warnings.

18 months agoMake the new manpage section better.
Wayne Davison [Sun, 16 Oct 2022 17:23:51 +0000 (10:23 -0700)]
Make the new manpage section better.

18 months agoA few more manpage clarifications.
Wayne Davison [Sat, 15 Oct 2022 23:56:16 +0000 (16:56 -0700)]
A few more manpage clarifications.

18 months agoFix autoconf help strings (#389)
Alexponomarev7 [Sat, 15 Oct 2022 23:54:27 +0000 (01:54 +0200)]
Fix autoconf help strings (#389)

18 months agoAdd info on single-file copying; tweak `--mkpath`.
Wayne Davison [Wed, 12 Oct 2022 17:09:43 +0000 (10:09 -0700)]
Add info on single-file copying; tweak `--mkpath`.

18 months agoTweak NEWS.
Wayne Davison [Mon, 10 Oct 2022 15:55:09 +0000 (08:55 -0700)]
Tweak NEWS.

18 months agoChange fgrep to grep.
Wayne Davison [Fri, 7 Oct 2022 05:18:48 +0000 (22:18 -0700)]
Change fgrep to grep.

18 months agoFix validation of "preN" git tags for git-version.h.
Wayne Davison [Sun, 2 Oct 2022 18:43:46 +0000 (11:43 -0700)]
Fix validation of "preN" git tags for git-version.h.

18 months agoMention smart-make in a comment.
Wayne Davison [Sun, 2 Oct 2022 18:05:01 +0000 (11:05 -0700)]
Mention smart-make in a comment.

18 months agoMention the `--list-only` output format.
Wayne Davison [Sun, 2 Oct 2022 17:33:55 +0000 (10:33 -0700)]
Mention the `--list-only` output format.

18 months agoMention latest changes.
Wayne Davison [Sun, 2 Oct 2022 16:42:55 +0000 (09:42 -0700)]
Mention latest changes.

18 months agoComplain if the destination arg is empty.
Wayne Davison [Sun, 2 Oct 2022 16:42:17 +0000 (09:42 -0700)]
Complain if the destination arg is empty.

18 months agoRead a 4-byte mtime as unsigned (old-protocol).
Wayne Davison [Sat, 1 Oct 2022 15:23:47 +0000 (08:23 -0700)]
Read a 4-byte mtime as unsigned (old-protocol).

When conversing with a protocol 29 or earlier rsync, the modtime values
are arriving as 4-byte integers.  This change interprets these short
values as unsigned integers, allowing the time that can be conveyed to
range from 1-Jan-1970 to 7-Feb-2106 instead of the signed range of
13-Dec-1901 to 19-Jan-2038.  Given that we are fast approaching 2038,
any old-protocol transfers will be better served using the unsigned
range rather than the signed.

It is important to keep in mind that protocol 30 & 31 convey the full
8-byte mtime value (plus nanoseconds), allowing for a huge span of time
that is not affected by this change.

19 months agoUse newer protocol to avoid mtime corruption.
Wayne Davison [Sat, 1 Oct 2022 15:04:00 +0000 (08:04 -0700)]
Use newer protocol to avoid mtime corruption.

19 months agoPreparing for release of 3.2.7pre1 v3.2.7pre1
Wayne Davison [Fri, 30 Sep 2022 19:36:21 +0000 (12:36 -0700)]
Preparing for release of 3.2.7pre1

19 months agoA few more doc tweaks & comment tweaks.
Wayne Davison [Fri, 30 Sep 2022 19:34:58 +0000 (12:34 -0700)]
A few more doc tweaks & comment tweaks.

19 months agoExplicitly ignore snprintf() return value.
Wayne Davison [Fri, 30 Sep 2022 18:50:09 +0000 (11:50 -0700)]
Explicitly ignore snprintf() return value.

19 months agoMore NEWS updates.
Wayne Davison [Sun, 25 Sep 2022 19:49:45 +0000 (12:49 -0700)]
More NEWS updates.

19 months agoFix compile w/o openssl; disable sha256 & sha512 for --checksum.
Wayne Davison [Sun, 25 Sep 2022 19:42:09 +0000 (12:42 -0700)]
Fix compile w/o openssl; disable sha256 & sha512 for --checksum.

19 months agoAvoid test -e.
Wayne Davison [Wed, 21 Sep 2022 04:50:07 +0000 (21:50 -0700)]
Avoid test -e.

19 months agoFix a link.
Wayne Davison [Tue, 20 Sep 2022 07:12:49 +0000 (00:12 -0700)]
Fix a link.

19 months agoSome "use chroot" improvements.
Wayne Davison [Tue, 20 Sep 2022 05:37:29 +0000 (22:37 -0700)]
Some "use chroot" improvements.

- The sanitize_paths variable was set too often. It only needs to be set
  when the "inner" path is not "/".  This change avoids sanitizing &
  munging things for a path=/ module just because chroot is off.
- The default for "use chroot" is now "unset" instead of "true".  When
  unset it checks if chrooting works, and if not, it proceeds with a
  sanitized copy instead of totally failing to work.  This makes it
  easier to setup a non-root rsync daemon, for instance.  It will have
  no effect on a typical Linux root-run daemon where the default will
  continue to use chroot (because chrooting works).  A config file can
  explicitly set "use chroot = true | false" to force the choice.
- Try to improve the "use chroot" manpage.

19 months agoStop importing "re".
Wayne Davison [Tue, 20 Sep 2022 05:36:49 +0000 (22:36 -0700)]
Stop importing "re".

19 months agoPre-compute FILE_SUM_EXTRA_CNT.
Wayne Davison [Thu, 15 Sep 2022 17:25:32 +0000 (10:25 -0700)]
Pre-compute FILE_SUM_EXTRA_CNT.

19 months agoWe always add a slash now that path is cleaned.
Wayne Davison [Thu, 15 Sep 2022 17:13:07 +0000 (10:13 -0700)]
We always add a slash now that path is cleaned.

19 months agoUse string length diff heuristic to skip Levenshtein Algo (#369)
Kenneth Finnegan [Thu, 15 Sep 2022 17:12:02 +0000 (10:12 -0700)]
Use string length diff heuristic to skip Levenshtein Algo (#369)

When using the --fuzzy option to try and find close matches locally,
the edit distance algorithm used is O(N^2), which can get painful on
CPU constrained systems when working in folders with tens of thousands
of files in it.

The lower bound on the calculated Levenshtein distance is the difference
of the two strings being compared, so if that difference is larger than
the current best match, the calculation of the exact edit distance between
the two strings can be skipped.

Testing on the OpenSUSE package repo has shown a 50% reduction in the CPU time
required to plan the rsync transaction.

19 months agoMake the implied-arg adding for --relative more efficient.
Wayne Davison [Wed, 14 Sep 2022 15:20:41 +0000 (08:20 -0700)]
Make the implied-arg adding for --relative more efficient.

19 months agoMore NEWS updates.
Wayne Davison [Wed, 14 Sep 2022 14:53:23 +0000 (07:53 -0700)]
More NEWS updates.

19 months agoFix exclusion of /. with --relative.
Wayne Davison [Wed, 14 Sep 2022 14:14:13 +0000 (07:14 -0700)]
Fix exclusion of /. with --relative.

19 months agoTweak a define.
Wayne Davison [Wed, 14 Sep 2022 14:13:24 +0000 (07:13 -0700)]
Tweak a define.

19 months agoUse UNSUPPORTED instead of PROTOCOL for various validation checks.
Wayne Davison [Wed, 14 Sep 2022 06:38:01 +0000 (23:38 -0700)]
Use UNSUPPORTED instead of PROTOCOL for various validation checks.

19 months agoUse hashlittle2() for xattr hashing
Wayne Davison [Wed, 14 Sep 2022 05:43:01 +0000 (22:43 -0700)]
Use hashlittle2() for xattr hashing

- The non-zero key code is now in hashtable.c
- The hashtable_create() code already checks for OOM

19 months agoAdd hashlittle2() and ensure the hash is never 0
Wayne Davison [Wed, 14 Sep 2022 05:37:39 +0000 (22:37 -0700)]
Add hashlittle2() and ensure the hash is never 0

It's probably time for a faster hash algorithm, but this gives us
the free 64-bit hashing that things like the xattr code can use.

19 months agoFix really silly bug with --relative rules.
Wayne Davison [Wed, 14 Sep 2022 03:56:32 +0000 (20:56 -0700)]
Fix really silly bug with --relative rules.

19 months agoImprove var ref.
Wayne Davison [Wed, 14 Sep 2022 03:55:26 +0000 (20:55 -0700)]
Improve var ref.

19 months agoNEWS tweak.
Wayne Davison [Wed, 14 Sep 2022 03:54:35 +0000 (20:54 -0700)]
NEWS tweak.

19 months agoUpdate NEWS.
Wayne Davison [Tue, 13 Sep 2022 05:04:33 +0000 (22:04 -0700)]
Update NEWS.

19 months agoFix bug with validing remote filter rules.
Wayne Davison [Tue, 13 Sep 2022 05:02:00 +0000 (22:02 -0700)]
Fix bug with validing remote filter rules.

19 months agoMention the filename when unpack_smb_acl() returns an error.
Wayne Davison [Sun, 11 Sep 2022 17:03:16 +0000 (10:03 -0700)]
Mention the filename when unpack_smb_acl() returns an error.

19 months agoRequire a newer protocol to specify the digest list.
Wayne Davison [Sun, 11 Sep 2022 04:52:54 +0000 (21:52 -0700)]
Require a newer protocol to specify the digest list.

19 months agoTalk about the new daemon greeting line.
Wayne Davison [Sun, 11 Sep 2022 04:30:46 +0000 (21:30 -0700)]
Talk about the new daemon greeting line.

19 months agoImprove output of "N-bit" items in json data.
Wayne Davison [Sun, 11 Sep 2022 04:05:07 +0000 (21:05 -0700)]
Improve output of "N-bit" items in json data.

19 months agoAlso change dashes in the dict var names to make jq use easier.
Wayne Davison [Sun, 11 Sep 2022 00:30:54 +0000 (17:30 -0700)]
Also change dashes in the dict var names to make jq use easier.

19 months agoA few more tweaks.
Wayne Davison [Sat, 10 Sep 2022 23:19:21 +0000 (16:19 -0700)]
A few more tweaks.

19 months agoUnify older protect-args capability to secluded-args name.
Wayne Davison [Sat, 10 Sep 2022 23:17:32 +0000 (16:17 -0700)]
Unify older protect-args capability to secluded-args name.

19 months agoUse dict for capabilities & optimizations in json output.
Wayne Davison [Sat, 10 Sep 2022 22:39:25 +0000 (15:39 -0700)]
Use dict for capabilities & optimizations in json output.

19 months agoUse JSON output if --version (-V) is repeated (client side only).
Wayne Davison [Sat, 10 Sep 2022 18:07:01 +0000 (11:07 -0700)]
Use JSON output if --version (-V) is repeated (client side only).

19 months agoAdd support for various SHA checksum digests
Wayne Davison [Sat, 10 Sep 2022 17:23:36 +0000 (10:23 -0700)]
Add support for various SHA checksum digests

The main purpose of the SHA checksums are to allow the daemon auth code
to pick a stonger digest method when negotiating the auth digest to use.
However, the SHA digests are also available for use in file checksums,
should someon really want to use one of them.

The new digests are listed from strongest to weakest at the start of the
daemon auth list, giving them the highest priority.

The new digests are listed from weakest to strongest near the end of the
checksum list, giving them the lowest priority of use for file
checksums.

19 months agoImprove various things in the checksum code
Wayne Davison [Sat, 10 Sep 2022 16:43:47 +0000 (09:43 -0700)]
Improve various things in the checksum code

- Size flist checksum data to hold the active size, not the max.
- Add a negotiated hash method to the daemon auth code.
- Use EVP for all openssl digests. This makes it easy to add more
  openssl digest methods and avoids deprecation warnings.
- Support a way to re-enable deprecated digests via openssl conf
  file and allow a default file to be configured.
- Supply a simple openssl-rsync.cnf file to enable legacy digests.

19 months agoTry freebsd-13-1 to fix weird wget issue.
Wayne Davison [Fri, 9 Sep 2022 20:16:27 +0000 (13:16 -0700)]
Try freebsd-13-1 to fix weird wget issue.

19 months agoWhen deleting a tag, del in the patches dir too.
Wayne Davison [Fri, 9 Sep 2022 19:59:22 +0000 (12:59 -0700)]
When deleting a tag, del in the patches dir too.

19 months agoStart 3.2.7dev going.
Wayne Davison [Fri, 9 Sep 2022 19:58:22 +0000 (12:58 -0700)]
Start 3.2.7dev going.

19 months agoPreparing for release of 3.2.6 v3.2.6
Wayne Davison [Fri, 9 Sep 2022 19:23:37 +0000 (12:23 -0700)]
Preparing for release of 3.2.6

19 months agoMention a potential bash security issue with openssh forced commands.
Wayne Davison [Fri, 9 Sep 2022 17:47:09 +0000 (10:47 -0700)]
Mention a potential bash security issue with openssh forced commands.