X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/36e715fdf295b975105dce63581d9cf9f154f34f..ae306a2933c7617493d80f46d891911634ec43d0:/usermap.diff diff --git a/usermap.diff b/usermap.diff index 2608b15..0c30f4e 100644 --- a/usermap.diff +++ b/usermap.diff @@ -10,7 +10,7 @@ To use this patch, run these commands for a successful build: diff --git a/flist.c b/flist.c --- a/flist.c +++ b/flist.c -@@ -70,6 +70,7 @@ extern int need_unsorted_flist; +@@ -71,6 +71,7 @@ extern int sender_symlink_iconv; extern int unsort_ndx; extern struct stats stats; extern char *filesfrom_host; @@ -18,7 +18,7 @@ diff --git a/flist.c b/flist.c extern char curr_dir[MAXPATHLEN]; -@@ -764,7 +765,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, +@@ -767,7 +768,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, uid = (uid_t)read_varint(f); if (xflags & XMIT_USER_NAME_FOLLOWS) uid = recv_user_name(f, uid); @@ -27,7 +27,7 @@ diff --git a/flist.c b/flist.c uid = match_uid(uid); } } -@@ -776,7 +777,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, +@@ -779,7 +780,7 @@ static struct file_struct *recv_file_entry(struct file_list *flist, gid_flags = 0; if (xflags & XMIT_GROUP_NAME_FOLLOWS) gid = recv_group_name(f, gid, &gid_flags); @@ -36,7 +36,7 @@ diff --git a/flist.c b/flist.c gid = match_gid(gid, &gid_flags); } } -@@ -2188,8 +2189,13 @@ struct file_list *recv_file_list(int f) +@@ -2264,8 +2265,13 @@ struct file_list *recv_file_list(int f) int dstart, flags; int64 start_read; @@ -115,7 +115,7 @@ diff --git a/options.c b/options.c case OPT_HELP: usage(FINFO); exit_cleanup(0); -@@ -1997,6 +2021,18 @@ void server_options(char **args, int *argc_p) +@@ -2005,6 +2029,18 @@ void server_options(char **args, int *argc_p) args[ac++] = "--use-qsort"; if (am_sender) { @@ -146,7 +146,7 @@ diff --git a/rsync.yo b/rsync.yo --timeout=SECONDS set I/O timeout in seconds --contimeout=SECONDS set daemon connection timeout in seconds -I, --ignore-times don't skip files that match size and time -@@ -1608,6 +1610,47 @@ from the source system is used instead. See also the comments on the +@@ -1620,6 +1622,47 @@ from the source system is used instead. See also the comments on the the chroot setting affects rsync's ability to look up the names of the users and groups and what you can do about it. @@ -194,6 +194,26 @@ diff --git a/rsync.yo b/rsync.yo dit(bf(--timeout=TIMEOUT)) This option allows you to set a maximum I/O timeout in seconds. If no data is transferred for the specified time then rsync will exit. The default is 0, which means no timeout. +diff --git a/support/mapfrom b/support/mapfrom +new file mode 100755 +--- /dev/null ++++ b/support/mapfrom +@@ -0,0 +1,5 @@ ++#!/usr/bin/perl ++while (<>) { ++ push @_, "$2:$1" if /^(\w+):[^:]+:(\d+)/; ++} ++print join(',', @_), "\n"; +diff --git a/support/mapto b/support/mapto +new file mode 100755 +--- /dev/null ++++ b/support/mapto +@@ -0,0 +1,5 @@ ++#!/usr/bin/perl ++while (<>) { ++ push @_, "$1:$2" if /^(\w+):[^:]+:(\d+)/; ++} ++print join(',', @_), "\n"; diff --git a/uidlist.c b/uidlist.c --- a/uidlist.c +++ b/uidlist.c