rsync -avoogg host:/from/ /to/
---- orig/compat.c 2005-02-20 00:02:22
-+++ compat.c 2005-02-20 00:09:11
+--- orig/compat.c 2005-03-09 18:53:55
++++ compat.c 2005-03-11 11:25:46
@@ -28,11 +28,14 @@
int remote_protocol = 0;
+extern int am_root;
extern int am_server;
extern int am_sender;
+ extern int inplace;
extern int fuzzy_basis;
extern int read_batch;
- extern int checksum_seed;
+extern int preserve_uid;
+extern int preserve_gid;
+ extern int checksum_seed;
+ extern int basis_dir_cnt;
extern int protocol_version;
-
- void setup_protocol(int f_out,int f_in)
-@@ -89,4 +92,11 @@ void setup_protocol(int f_out,int f_in)
+@@ -106,4 +109,11 @@ void setup_protocol(int f_out,int f_in)
} else {
checksum_seed = read_int(f_in);
}
+ preserve_gid = 2;
+ }
}
---- orig/options.c 2005-02-20 00:02:23
+--- orig/options.c 2005-05-19 08:52:42
+++ options.c 2004-09-09 01:59:08
-@@ -394,8 +394,8 @@ static struct poptOption long_options[]
+@@ -408,8 +408,8 @@ static struct poptOption long_options[]
{"no-whole-file", 0, POPT_ARG_VAL, &whole_file, 0, 0, 0 },
{"copy-unsafe-links",0, POPT_ARG_NONE, ©_unsafe_links, 0, 0, 0 },
{"perms", 'p', POPT_ARG_NONE, &preserve_perms, 0, 0, 0 },
+ {"group", 'g', POPT_ARG_NONE, 0, 'g', 0, 0 },
{"devices", 'D', POPT_ARG_NONE, &preserve_devices, 0, 0, 0 },
{"times", 't', POPT_ARG_NONE, &preserve_times, 0, 0, 0 },
- {"omit-dir-times", 'O', POPT_ARG_NONE, &omit_dir_times, 0, 0, 0 },
-@@ -734,6 +734,14 @@ int parse_arguments(int *argc, const cha
+ {"omit-dir-times", 'O', POPT_ARG_VAL, &omit_dir_times, 2, 0, 0 },
+@@ -781,6 +781,14 @@ int parse_arguments(int *argc, const cha
usage(FINFO);
exit_cleanup(0);
case 'v':
verbose++;
break;
-@@ -944,8 +952,8 @@ int parse_arguments(int *argc, const cha
+@@ -963,8 +971,8 @@ int parse_arguments(int *argc, const cha
#endif
preserve_perms = 1;
preserve_times = 1;
preserve_devices = 1;
}
-@@ -1242,10 +1250,16 @@ void server_options(char **args,int *arg
+@@ -1282,10 +1290,16 @@ void server_options(char **args,int *arg
if (preserve_hard_links)
argstr[x++] = 'H';
if (preserve_devices)
argstr[x++] = 'D';
if (preserve_times)
---- orig/rsync.c 2005-02-20 00:02:23
+--- orig/rsync.c 2005-03-16 02:19:30
+++ rsync.c 2005-02-01 10:46:04
@@ -27,7 +27,6 @@ extern int dry_run;
extern int daemon_log_format_has_i;
extern int am_server;
extern int am_sender;
extern int am_generator;
-@@ -199,7 +198,7 @@ int set_perms(char *fname,struct file_st
+@@ -81,7 +80,7 @@ int set_perms(char *fname,struct file_st
updated = 1;
}
change_gid = preserve_gid && file->gid != GID_NONE
&& st->st_gid != file->gid;
#if !defined HAVE_LCHOWN && !defined CHOWN_MODIFIES_SYMLINK
---- orig/uidlist.c 2005-02-14 02:45:11
+--- orig/uidlist.c 2005-02-14 00:53:44
+++ uidlist.c 2004-09-09 01:59:08
@@ -35,7 +35,6 @@ extern int verbose;
extern int preserve_uid;