X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/52e09c4e076125dd724f969fe00062f2a0815de4..c8a8b4a7fd58ee1ee8b055a1559c71c9921d8753:/flags.diff diff --git a/flags.diff b/flags.diff index c67eda0..f5abff3 100644 --- a/flags.diff +++ b/flags.diff @@ -74,7 +74,7 @@ TODO: fix --delete-delay to work with --flags option. 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); @@ -87,7 +87,7 @@ TODO: fix --delete-delay to work with --flags option. 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)) { @@ -98,7 +98,7 @@ TODO: fix --delete-delay to work with --flags option. static int64 modtime; static mode_t mode; +#ifdef SUPPORT_FLAGS -+ static uint32 fileflags; ++ static uint32 fileflags; +#endif static int64 dev; static dev_t rdev; @@ -111,7 +111,7 @@ TODO: fix --delete-delay to work with --flags option. 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 @@ -305,7 +305,7 @@ TODO: fix --delete-delay to work with --flags option. 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 @@ -517,7 +517,7 @@ TODO: fix --delete-delay to work with --flags option. #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 @@ -525,7 +525,7 @@ TODO: fix --delete-delay to work with --flags option. -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 @@ -536,9 +536,9 @@ TODO: fix --delete-delay to work with --flags option. 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)