[SCM] The rsync repository. - branch master updated

Rsync CVS commit messages rsync-cvs at lists.samba.org
Wed Oct 20 04:13:02 UTC 2021


The branch, master has been updated
       via  be3d6c0f Update the NEWS.
       via  7956070f Make --chown|--usermap|--groupmap imply -o|-g (as appropriate).
      from  d0f34b5a Allow a "%scope" suffix on the client's ipv6 addr. Hopefully fixes bug #239.

https://git.samba.org/?p=rsync.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit be3d6c0fbbd07781bbae6261cda109f8f08c031b
Author: Wayne Davison <wayne at opencoder.net>
Date:   Tue Oct 19 21:10:59 2021 -0700

    Update the NEWS.

commit 7956070f2bf8a368d702021082b2621f89477fb7
Author: Wayne Davison <wayne at opencoder.net>
Date:   Tue Oct 19 21:01:58 2021 -0700

    Make --chown|--usermap|--groupmap imply -o|-g (as appropriate).

-----------------------------------------------------------------------

Summary of changes:
 NEWS.md    | 9 +++++++++
 options.c  | 4 ++++
 rsync.1.md | 9 +++++++--
 3 files changed, 20 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/NEWS.md b/NEWS.md
index d244eba4..cfcad9f4 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -51,12 +51,21 @@
  - Reduced memory usage for an incremental transfer that has a bunch of small
    diretories.
 
+ - The rsync daemon can now handle a client address with an implied "%scope"
+   suffix.
+
  - Added support for `--atimes` on macOS and fixed using using it without -t.
 
  - Rsync can now update the xattrs on a read-only file when your user can
    temporarily add user-write permission to the file. (It always worked for a
    root transfer.)
 
+ - Rsync can now work around an `--inplace` update of a file that is being
+   refused due to the Linux fs.protected_regular sysctl setting.
+
+ - When `--chown`, `--usermap`, or `--groupmap` is used, rsync now implies
+   the appropriate `--owner` and/or `--group` option.
+
  - More ASM optimizations from Shark64.
 
  - Make rrsync handle the latest options.
diff --git a/options.c b/options.c
index d1d540f3..3f035462 100644
--- a/options.c
+++ b/options.c
@@ -1747,6 +1747,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
 			}
 			usermap = (char *)poptGetOptArg(pc);
 			usermap_via_chown = False;
+			preserve_uid = 1;
 			break;
 
 		case OPT_GROUPMAP:
@@ -1762,6 +1763,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
 			}
 			groupmap = (char *)poptGetOptArg(pc);
 			groupmap_via_chown = False;
+			preserve_gid = 1;
 			break;
 
 		case OPT_CHOWN: {
@@ -1785,6 +1787,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
 				if (asprintf(&usermap, "*:%.*s", len, chown) < 0)
 					out_of_memory("parse_arguments");
 				usermap_via_chown = True;
+				preserve_uid = 1;
 			}
 			if (arg && *arg) {
 				if (groupmap) {
@@ -1800,6 +1803,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
 				if (asprintf(&groupmap, "*:%s", arg) < 0)
 					out_of_memory("parse_arguments");
 				groupmap_via_chown = True;
+				preserve_gid = 1;
 			}
 			break;
 		}
diff --git a/rsync.1.md b/rsync.1.md
index 3de57b72..d154a98c 100644
--- a/rsync.1.md
+++ b/rsync.1.md
@@ -2638,6 +2638,9 @@ your home directory (remove the '=' for that).
     option to have any effect, the `-g` (`--group`) option must be used (or
     implied), and the receiver will need to have permissions to set that group.
 
+    The `--usermap` option implies the `--owner` option while the `--groupmap`
+    option implies the `--group` option.
+
     If your shell complains about the wildcards, use `--protect-args` (`-s`).
 
 0.  `--chown=USER:GROUP`
@@ -2650,8 +2653,10 @@ your home directory (remove the '=' for that).
     USER is empty, a leading colon must be supplied.
 
     If you specify "`--chown=foo:bar`", this is exactly the same as specifying
-    "`--usermap=*:foo --groupmap=*:bar`", only easier.  If your shell complains
-    about the wildcards, use `--protect-args` (`-s`).
+    "`--usermap=*:foo --groupmap=*:bar`", only easier (with the same implied
+    `--owner` and/or `--group` option).
+
+    If your shell complains about the wildcards, use `--protect-args` (`-s`).
 
 0.  `--timeout=SECONDS`
 


-- 
The rsync repository.



More information about the rsync-cvs mailing list