Moved the flist_extra_cnt stuff from options.c to compat.c so that
authorWayne Davison <wayned@samba.org>
Sun, 17 Dec 2006 00:40:21 +0000 (00:40 +0000)
committerWayne Davison <wayned@samba.org>
Sun, 17 Dec 2006 00:40:21 +0000 (00:40 +0000)
the values will be computed separately for the sender and the
receiver.

compat.c
options.c

index b22c983..b090c2a 100644 (file)
--- a/compat.c
+++ b/compat.c
@@ -23,6 +23,7 @@
 #include "rsync.h"
 
 int remote_protocol = 0;
+int flist_extra_cnt = 0; /* count of file-list extras that everyone gets */
 
 extern int verbose;
 extern int am_server;
@@ -39,6 +40,15 @@ extern char *dest_option;
 
 void setup_protocol(int f_out,int f_in)
 {
+       if (am_sender)
+               flist_extra_cnt += PTR_EXTRA_LEN;
+       else
+               flist_extra_cnt++;
+       if (preserve_uid)
+               preserve_uid = ++flist_extra_cnt;
+       if (preserve_gid)
+               preserve_gid = ++flist_extra_cnt;
+
        if (remote_protocol == 0) {
                if (!read_batch)
                        write_int(f_out, protocol_version);
index 304704b..0abf6ce 100644 (file)
--- a/options.c
+++ b/options.c
@@ -116,7 +116,6 @@ int checksum_seed = 0;
 int inplace = 0;
 int delay_updates = 0;
 long block_size = 0; /* "long" because popt can't set an int32. */
-int flist_extra_cnt = 0; /* count of file-list extras that everyone gets */
 
 /** Network address family. **/
 #ifdef INET6
@@ -1219,11 +1218,6 @@ int parse_arguments(int *argc, const char ***argv, int frommain)
                need_messages_from_generator = 1;
        }
 
-       if (preserve_uid)
-               preserve_uid = ++flist_extra_cnt;
-       if (preserve_gid)
-               preserve_gid = ++flist_extra_cnt;
-
        *argv = poptGetArgs(pc);
        *argc = count_args(*argv);