Make option variables a little clearer by using separate FOO_ndx
authorWayne Davison <wayned@samba.org>
Mon, 2 Jul 2007 21:29:49 +0000 (21:29 +0000)
committerWayne Davison <wayned@samba.org>
Mon, 2 Jul 2007 21:29:49 +0000 (21:29 +0000)
values to index into the file-list extra-attribute array instead
of abusing the preserve_FOO variables.

compat.c
rsync.h

index 527485d..544bba7 100644 (file)
--- a/compat.c
+++ b/compat.c
@@ -56,6 +56,9 @@ extern char *partial_dir;
 extern char *dest_option;
 extern struct filter_list_struct filter_list;
 
+/* These index values are for the file-list's extra-attribute array. */
+int uid_ndx, gid_ndx, acls_ndx, xattrs_ndx;
+
 /* The server makes sure that if either side only supports a pre-release
  * version of a protocol, that both sides must speak a compatible version
  * of that protocol for it to be advertised as available. */
@@ -92,13 +95,13 @@ void setup_protocol(int f_out,int f_in)
        else
                file_extra_cnt++;
        if (preserve_uid)
-               preserve_uid = ++file_extra_cnt;
+               uid_ndx = ++file_extra_cnt;
        if (preserve_gid)
-               preserve_gid = ++file_extra_cnt;
+               gid_ndx = ++file_extra_cnt;
        if (preserve_acls && !am_sender)
-               preserve_acls = ++file_extra_cnt;
+               acls_ndx = ++file_extra_cnt;
        if (preserve_xattrs)
-               preserve_xattrs = ++file_extra_cnt;
+               xattrs_ndx = ++file_extra_cnt;
 
        if (remote_protocol == 0) {
                if (am_server && !local_server)
diff --git a/rsync.h b/rsync.h
index 2401d8f..be5831c 100644 (file)
--- a/rsync.h
+++ b/rsync.h
@@ -580,10 +580,10 @@ struct file_struct {
 };
 
 extern int file_extra_cnt;
-extern int preserve_uid;
-extern int preserve_gid;
-extern int preserve_acls;
-extern int preserve_xattrs;
+extern int uid_ndx;
+extern int gid_ndx;
+extern int acls_ndx;
+extern int xattrs_ndx;
 
 #define FILE_STRUCT_LEN (offsetof(struct file_struct, basename))
 #define EXTRA_LEN (sizeof (union file_extras))
@@ -614,10 +614,10 @@ extern int preserve_xattrs;
 #define F_DEPTH(f) REQ_EXTRA(f, 1)->num
 
 /* When the associated option is on, all entries will have these present: */
-#define F_OWNER(f) REQ_EXTRA(f, preserve_uid)->unum
-#define F_GROUP(f) REQ_EXTRA(f, preserve_gid)->unum
-#define F_ACL(f) REQ_EXTRA(f, preserve_acls)->num
-#define F_XATTR(f) REQ_EXTRA(f, preserve_xattrs)->num
+#define F_OWNER(f) REQ_EXTRA(f, uid_ndx)->unum
+#define F_GROUP(f) REQ_EXTRA(f, gid_ndx)->unum
+#define F_ACL(f) REQ_EXTRA(f, acls_ndx)->num
+#define F_XATTR(f) REQ_EXTRA(f, xattrs_ndx)->num
 #define F_NDX(f) REQ_EXTRA(f, ic_ndx)->num
 
 /* These items are per-entry optional and mutally exclusive: */