else
mode = file->mode;
+#ifdef SUPPORT_FLAGS
-+ if (F_FFLAGS(file) == fileflags)
++ if (F_FFLAGS(file) == fileflags)
+ xflags |= XMIT_SAME_FLAGS;
+ else
+ fileflags = F_FFLAGS(file);
if (!(xflags & XMIT_SAME_MODE))
write_int(f, to_wire_mode(mode));
+#ifdef SUPPORT_FLAGS
-+ if (fileflags_ndx && !(xflags & XMIT_SAME_FLAGS))
++ if (fileflags_ndx && !(xflags & XMIT_SAME_FLAGS))
+ write_int(f, (int)fileflags);
+#endif
if (uid_ndx && !(xflags & XMIT_SAME_UID)) {
static int64 modtime;
static mode_t mode;
+#ifdef SUPPORT_FLAGS
-+ static uint32 fileflags;
++ static uint32 fileflags;
+#endif
static int64 dev;
static dev_t rdev;
if (chmod_modes && !S_ISLNK(mode))
mode = tweak_mode(mode, chmod_modes);
+#ifdef SUPPORT_FLAGS
-+ if (fileflags_ndx && !(xflags & XMIT_SAME_FLAGS))
++ if (fileflags_ndx && !(xflags & XMIT_SAME_FLAGS))
+ fileflags = (uint32)read_int(f);
+#endif
char const *links = "no ";
char const *iconv = "no ";
char const *ipv6 = "no ";
-+ char const *fileflags = "no ";
++ char const *fileflags = "no ";
STRUCT_STAT *dumstat;
#if SUBPROTOCOL_VERSION != 0
#define F_NDX(f) REQ_EXTRA(f, ic_ndx)->num
--- old/rsync.yo
+++ new/rsync.yo
-@@ -343,6 +343,7 @@ to the detailed description below for a
+@@ -339,6 +339,7 @@ to the detailed description below for a
-K, --keep-dirlinks treat symlinked dir on receiver as dir
-H, --hard-links preserve hard links
-p, --perms preserve permissions
-E, --executability preserve executability
--chmod=CHMOD affect file and/or directory permissions
-A, --acls preserve ACLs (implies -p)
-@@ -544,7 +545,9 @@ specified, in which case bf(-r) is not i
+@@ -540,7 +541,9 @@ specified, in which case bf(-r) is not i
Note that bf(-a) bf(does not preserve hardlinks), because
finding multiply-linked files is expensive. You must separately
dit(--no-OPTION) You may turn off one or more implied options by prefixing
the option name with "no-". Not all options may be prefixed with a "no-":
-@@ -891,6 +894,13 @@ dit(bf(-X, --xattrs)) This option causes
- extended attributes to be the same as the local ones. This will work
- only if the remote machine's rsync also supports this option.
+@@ -895,6 +898,13 @@ super-user copies all namespaces except
+ the user.* namespace. To be able to backup and restore non-user namespaces as
+ a normal user, see the bf(--fake-super) option.
+dit(bf(--flags)) This option causes rsync to update the change file flags
+to be the same as the source file, if your OS supports the bf(chflags)(2)