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;
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;
}
#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,