X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/afcb578c53a1c5579d48336e2197e476cead7057..b06103cc7d4f1827bb8f8a83ca07b56a48930e63:/id-pair.diff diff --git a/id-pair.diff b/id-pair.diff index 32683b9..4caf5fd 100644 --- a/id-pair.diff +++ b/id-pair.diff @@ -146,17 +146,47 @@ gets to be really large. iflags |= ITEM_REPORT_GROUP; } else iflags |= ITEM_IS_NEW; +--- old/log.c ++++ new/log.c +@@ -48,6 +48,7 @@ extern int daemon_log_format_has_o_or_i; + extern mode_t orig_umask; + extern char *auth_user; + extern char *log_format; ++extern struct id_pair *id_pairs; + #if defined HAVE_ICONV_OPEN && defined HAVE_ICONV_H + extern iconv_t ic_chck; + #endif +@@ -480,16 +481,16 @@ static void log_formatted(enum logcode c + case 'U': + strlcat(fmt, "ld", sizeof fmt); + snprintf(buf2, sizeof buf2, fmt, +- (long)file->uid); ++ (long)id_pairs[file->id_ndx].uid); + n = buf2; + break; + case 'G': +- if (file->gid == GID_NONE) ++ if (id_pairs[file->id_ndx].gid == GID_NONE) + n = "DEFAULT"; + else { + strlcat(fmt, "ld", sizeof fmt); + snprintf(buf2, sizeof buf2, fmt, +- (long)file->gid); ++ (long)id_pairs[file->id_ndx].gid); + n = buf2; + } + break; --- old/rsync.c +++ new/rsync.c -@@ -50,6 +50,7 @@ extern int inplace; - extern int keep_dirlinks; +@@ -50,6 +50,7 @@ extern int keep_dirlinks; extern int make_backups; + extern mode_t orig_umask; extern struct stats stats; +extern struct id_pair *id_pairs; + extern struct chmod_mode_struct *daemon_chmod_modes; #if defined HAVE_ICONV_OPEN && defined HAVE_ICONV_H - iconv_t ic_chck = (iconv_t)-1; -@@ -125,6 +126,8 @@ int set_file_attrs(char *fname, struct f +@@ -128,6 +129,8 @@ int set_file_attrs(char *fname, struct f int updated = 0; STRUCT_STAT st2; int change_uid, change_gid; @@ -165,7 +195,7 @@ gets to be really large. if (!st) { if (dry_run) -@@ -157,9 +160,11 @@ int set_file_attrs(char *fname, struct f +@@ -160,9 +163,11 @@ int set_file_attrs(char *fname, struct f updated = 1; } @@ -180,7 +210,7 @@ gets to be really large. #if !defined HAVE_LCHOWN && !defined CHOWN_MODIFIES_SYMLINK if (S_ISLNK(st->st_mode)) ; -@@ -171,18 +176,18 @@ int set_file_attrs(char *fname, struct f +@@ -174,18 +179,18 @@ int set_file_attrs(char *fname, struct f rprintf(FINFO, "set uid of %s from %ld to %ld\n", fname,