<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/bb77a85f527a0cb749fa91df80a0eb14293e24b5">https://github.com/macports/macports-ports/commit/bb77a85f527a0cb749fa91df80a0eb14293e24b5</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new bb77a85f527 rsync: Update to 3.2.2
</span>bb77a85f527 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit bb77a85f527a0cb749fa91df80a0eb14293e24b5
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Mon Jul 6 16:35:16 2020 -0500

<span style='display:block; white-space:pre;color:#404040;'>    rsync: Update to 3.2.2
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Rename patchfiles to match their official upstream names.
</span>---
 net/rsync/Portfile                                 |  38 +++++---
 .../files/{patch-crtimes.diff => crtimes.diff}     |  72 +++++++-------
 .../files/{patch-fileflags.diff => fileflags.diff} | 108 ++++++++++-----------
 net/rsync/files/patch-acls-unpack-error.diff       |   9 +-
 4 files changed, 117 insertions(+), 110 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/rsync/Portfile b/net/rsync/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index dc6cd6cc74e..34470a999cc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/rsync/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/rsync/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,8 +3,12 @@
</span> PortSystem          1.0
 
 name                rsync
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             3.2.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             3.2.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  0de1f851925437e08d794db341189ead54e36620 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  644bd3841779507665211fd7db8359c8a10670c57e305b4aab61b4e40037afa8 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1057001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> categories          net
 license             {GPL-3+ OpenSSLException}
 installs_libs       no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,10 +23,6 @@ long_description    rsync is an open source utility that provides fast \
</span> homepage            https://rsync.samba.org
 master_sites        https://download.samba.org/pub/rsync/src/
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  5e766682e2d2ea1194cf8cb13d21caa81d3a87ba \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  95f2dd62979b500a99b34c1a6453a0787ada0330e4bec7fcffad37b9062d58d3 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    1051665
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> depends_lib         port:popt \
                     port:libiconv \
                     port:xxhashlib \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -30,15 +30,23 @@ depends_lib         port:popt \
</span>                     port:zstd \
                     path:lib/libssl.dylib:openssl
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# these come from http://rsync.samba.org/ftp/rsync/rsync-patches-3.2.1.tar.gz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# and need to be updated with each release
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# hfs-compression.diff is marked by upstream as broken as of 3.2.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# removed: patch-hfs-compression.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles          patch-fileflags.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    patch-crtimes.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    patch-acls-unpack-error.diff
</span> patch.pre_args      -p1
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# These patches come from
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://download.samba.org/pub/rsync/src/rsync-patches-3.2.2.tar.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and need to be updated with each release.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# We would like to use hfs-compression.diff but it is claimed that it is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# marked by upstream as broken as of 3.1.3, although I cannot find
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# evidence for that claim:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/60792
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          fileflags.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    crtimes.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This patch adds "advanced error-logging for ACL unpack errors". It
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# is unknown where the patch came from or whether it has been suggested
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# to the developers of rsync.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-acls-unpack-error.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args      --with-rsyncd-conf=${prefix}/etc/rsyncd.conf
 
 pre-configure {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -50,11 +58,11 @@ test.target        check
</span> 
 post-destroot {
     xinstall -d ${destroot}${prefix}/share/doc/${name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -m 644 -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 -W ${worksrcpath} \
</span>                     COPYING INSTALL.md NEWS.md TODO README.md doc/README-SGML \
                     doc/profile.txt doc/rsync.sgml \
                     ${destroot}${prefix}/share/doc/${name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -m 644 ${filespath}/rsyncd.conf.example \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 ${filespath}/rsyncd.conf.example \
</span>                     ${destroot}${prefix}/etc/rsyncd.conf.example
     reinplace "s|__PREFIX__|${prefix}|g" \
         ${destroot}${prefix}/etc/rsyncd.conf.example
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/rsync/files/patch-crtimes.diff b/net/rsync/files/crtimes.diff
</span>similarity index 93%
rename from net/rsync/files/patch-crtimes.diff
rename to net/rsync/files/crtimes.diff
<span style='display:block; white-space:pre;color:#808080;'>index 35f242f5efa..e8dc668f17d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/rsync/files/patch-crtimes.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/rsync/files/crtimes.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -12,7 +12,7 @@ based-on: patch/master/fileflags
</span> diff --git a/compat.c b/compat.c
 --- a/compat.c
 +++ b/compat.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -43,6 +43,7 @@ extern int protect_args;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -44,6 +44,7 @@ extern int protect_args;
</span>  extern int preserve_uid;
  extern int preserve_gid;
  extern int preserve_atimes;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,7 +20,7 @@ diff --git a/compat.c b/compat.c
</span>  extern int preserve_acls;
  extern int preserve_xattrs;
  extern int preserve_fileflags;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -76,7 +77,7 @@ int inplace_partial = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -77,7 +78,7 @@ int inplace_partial = 0;
</span>  int do_negotiated_strings = 0;
  
  /* These index values are for the file-list's extra-attribute array. */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -29,7 +29,7 @@ diff --git a/compat.c b/compat.c
</span>  
  int receiver_symlink_times = 0; /* receiver can set the time on a symlink */
  int sender_symlink_iconv = 0; /* sender should convert symlink content */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -462,6 +463,8 @@ void setup_protocol(int f_out,int f_in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -555,6 +556,8 @@ void setup_protocol(int f_out,int f_in)
</span>    * aligned for direct int64-pointer memory access. */
        if (preserve_atimes)
                atimes_ndx = (file_extra_cnt += EXTRA64_CNT);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -38,7 +38,7 @@ diff --git a/compat.c b/compat.c
</span>   if (am_sender) /* This is most likely in the in64 union as well. */
                pathname_ndx = (file_extra_cnt += PTR_EXTRA_CNT);
        else
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -627,6 +630,10 @@ void setup_protocol(int f_out,int f_in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -718,6 +721,10 @@ void setup_protocol(int f_out,int f_in)
</span>           want_xattr_optim = protocol_version >= 31 && !(compat_flags & CF_AVOID_XATTR_OPTIM);
                proper_seed_order = compat_flags & CF_CHKSUM_SEED_FIX ? 1 : 0;
                xfer_flags_as_varint = compat_flags & CF_VARINT_FLIST_FLAGS ? 1 : 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,7 +60,7 @@ diff --git a/flist.c b/flist.c
</span>  extern int relative_paths;
  extern int implied_dirs;
  extern int ignore_perishable;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -382,6 +383,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -378,6 +379,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>                       int ndx, int first_ndx)
  {
        static time_t modtime, atime;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -70,7 +70,7 @@ diff --git a/flist.c b/flist.c
</span>   static mode_t mode;
  #ifdef SUPPORT_FILEFLAGS
        static uint32 fileflags;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -498,6 +502,13 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -494,6 +498,13 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>           else
                        atime = F_ATIME(file);
        }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,7 +84,7 @@ diff --git a/flist.c b/flist.c
</span>  
  #ifdef SUPPORT_HARD_LINKS
        if (tmp_dev != -1) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -585,6 +596,10 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -581,6 +592,10 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>   }
        if (xflags & XMIT_MOD_NSEC)
                write_varint(f, F_MOD_NSEC(file));
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -95,7 +95,7 @@ diff --git a/flist.c b/flist.c
</span>   if (!(xflags & XMIT_SAME_MODE))
                write_int(f, to_wire_mode(mode));
  #ifdef SUPPORT_FILEFLAGS
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -681,6 +696,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -677,6 +692,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>  static struct file_struct *recv_file_entry(int f, struct file_list *flist, int xflags)
  {
        static int64 modtime, atime;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -105,7 +105,7 @@ diff --git a/flist.c b/flist.c
</span>   static mode_t mode;
  #ifdef SUPPORT_FILEFLAGS
        static uint32 fileflags;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -794,6 +812,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -790,6 +808,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>                   mode = first->mode;
                        if (atimes_ndx && !S_ISDIR(mode))
                                atime = F_ATIME(first);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -116,7 +116,7 @@ diff --git a/flist.c b/flist.c
</span>  #ifdef SUPPORT_FILEFLAGS
                        if (preserve_fileflags)
                                fileflags = F_FFLAGS(first);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -834,6 +856,21 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -830,6 +852,21 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>           modtime_nsec = read_varint(f);
        else
                modtime_nsec = 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -138,7 +138,7 @@ diff --git a/flist.c b/flist.c
</span>   if (!(xflags & XMIT_SAME_MODE))
                mode = from_wire_mode(read_int(f));
        if (atimes_ndx && !S_ISDIR(mode) && !(xflags & XMIT_SAME_ATIME)) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1023,6 +1060,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1019,6 +1056,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>   }
        if (atimes_ndx && !S_ISDIR(mode))
                F_ATIME(file) = atime;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -149,7 +149,7 @@ diff --git a/flist.c b/flist.c
</span>   if (unsort_ndx)
                F_NDX(file) = flist->used + flist->ndx_start;
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1426,6 +1467,10 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1420,6 +1461,10 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
</span>           file->flags |= FLAG_OWNED_BY_US;
        if (atimes_ndx && !S_ISDIR(file->mode))
                F_ATIME(file) = st.st_atime;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -281,7 +281,7 @@ diff --git a/log.c b/log.c
</span> diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -64,6 +64,7 @@ int preserve_uid = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -65,6 +65,7 @@ int preserve_uid = 0;
</span>  int preserve_gid = 0;
  int preserve_times = 0;
  int preserve_atimes = 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -289,7 +289,7 @@ diff --git a/options.c b/options.c
</span>  int update_only = 0;
  int open_noatime = 0;
  int cvs_exclude = 0;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -664,6 +665,11 @@ static void print_capabilities(enum logcode f)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -671,6 +672,11 @@ static void print_info_flags(enum logcode f)
</span>  #endif
                        "file-flags",
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -298,10 +298,10 @@ diff --git a/options.c b/options.c
</span> +#endif
 +                      "crtimes",
 +
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        "*" /* All options after this point are hidden w/o -V -V */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "*Optimizations",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span>  #ifndef HAVE_SIMD
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                "no "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -842,6 +848,9 @@ static struct poptOption long_options[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -840,6 +846,9 @@ static struct poptOption long_options[] = {
</span>    {"no-U",             0,  POPT_ARG_VAL,    &preserve_atimes, 0, 0, 0 },
    {"open-noatime",     0,  POPT_ARG_VAL,    &open_noatime, 1, 0, 0 },
    {"no-open-noatime",  0,  POPT_ARG_VAL,    &open_noatime, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -311,7 +311,7 @@ diff --git a/options.c b/options.c
</span>    {"omit-dir-times",  'O', POPT_ARG_VAL,    &omit_dir_times, 1, 0, 0 },
    {"no-omit-dir-times",0,  POPT_ARG_VAL,    &omit_dir_times, 0, 0, 0 },
    {"no-O",             0,  POPT_ARG_VAL,    &omit_dir_times, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1222,6 +1231,9 @@ static void set_refuse_options(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1221,6 +1230,9 @@ static void set_refuse_options(void)
</span>   parse_one_refuse_match(0, "force-uchange", list_end);
        parse_one_refuse_match(0, "force-schange", list_end);
  #endif
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -321,7 +321,7 @@ diff --git a/options.c b/options.c
</span>  
        /* Now we use the descrip values to actually mark the options for refusal. */
        for (op = long_options; op != list_end; op++) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2569,6 +2581,10 @@ void server_options(char **args, int *argc_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2564,6 +2576,10 @@ void server_options(char **args, int *argc_p)
</span>           if (preserve_atimes > 1)
                        argstr[x++] = 'U';
        }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -343,7 +343,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  --omit-dir-times, -O     omit directories from --times
  --omit-link-times, -J    omit symlinks from --times
  --super                  receiver attempts super-user activities
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1370,6 +1371,11 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1368,6 +1369,11 @@ your home directory (remove the '=' for that).
</span>      mounted to avoid updating the atime on read access even without the
      O_NOATIME flag being set.
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -355,7 +355,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  0.  `--omit-dir-times`, `-O`
  
      This tells rsync to omit directories when it is preserving modification
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2606,7 +2612,7 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2642,7 +2648,7 @@ your home directory (remove the '=' for that).
</span>      output of other verbose messages).
  
      The "%i" escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -364,7 +364,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>      of update being done, **X** is replaced by the file-type, and the other
      letters represent attributes that may be output if they are being modified.
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2663,6 +2669,8 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2699,6 +2705,8 @@ your home directory (remove the '=' for that).
</span>        happens when a symlink or directory is updated.
      - The `a` means that the ACL information changed.
      - The `x` means that the extended attribute information changed.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -424,7 +424,7 @@ diff --git a/rsync.c b/rsync.c
</span> diff --git a/rsync.h b/rsync.h
 --- a/rsync.h
 +++ b/rsync.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -69,7 +69,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -70,7 +70,7 @@
</span>  /* The following XMIT flags require an rsync that uses a varint for the flag values */
  
  #define XMIT_SAME_FLAGS (1<<16)         /* any protocol - restricted by command-line option */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -433,7 +433,7 @@ diff --git a/rsync.h b/rsync.h
</span>  
  /* These flags are used in the live flist data. */
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -182,6 +182,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -183,6 +183,7 @@
</span>  #define ATTRS_ACCURATE_TIME      (1<<2)
  #define ATTRS_SKIP_ATIME      (1<<3)
  #define ATTRS_DELAY_IMMUTABLE (1<<4)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -441,7 +441,7 @@ diff --git a/rsync.h b/rsync.h
</span>  
  #define MSG_FLUSH     2
  #define FULL_FLUSH    1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -210,6 +211,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -211,6 +212,7 @@
</span>  #define ITEM_REPORT_ACL (1<<7)
  #define ITEM_REPORT_XATTR (1<<8)
  #define ITEM_REPORT_FFLAGS (1<<9)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -449,7 +449,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define ITEM_BASIS_TYPE_FOLLOWS (1<<11)
  #define ITEM_XNAME_FOLLOWS (1<<12)
  #define ITEM_IS_NEW (1<<13)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -575,6 +577,10 @@ typedef unsigned int size_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -577,6 +579,10 @@ typedef unsigned int size_t;
</span>  #define ST_FLAGS(st) NO_FFLAGS
  #endif
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -460,7 +460,7 @@ diff --git a/rsync.h b/rsync.h
</span>  /* Find a variable that is either exactly 32-bits or longer.
   * If some code depends on 32-bit truncation, it will need to
   * take special action in a "#if SIZEOF_INT32 > 4" section. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -784,6 +790,7 @@ struct file_struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -786,6 +792,7 @@ struct file_struct {
</span>  extern int file_extra_cnt;
  extern int inc_recurse;
  extern int atimes_ndx;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -468,7 +468,7 @@ diff --git a/rsync.h b/rsync.h
</span>  extern int pathname_ndx;
  extern int depth_ndx;
  extern int uid_ndx;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -848,6 +855,7 @@ extern int xattrs_ndx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -850,6 +857,7 @@ extern int xattrs_ndx;
</span>  #define F_XATTR(f) REQ_EXTRA(f, xattrs_ndx)->num
  #define F_NDX(f) REQ_EXTRA(f, unsort_ndx)->num
  #define F_ATIME(f) REQ_EXTRA64(f, atimes_ndx)->num
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -476,7 +476,7 @@ diff --git a/rsync.h b/rsync.h
</span>  
  /* These items are per-entry optional: */
  #define F_HL_GNUM(f) OPT_EXTRA(f, START_BUMP(f))->num /* non-dirs */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1090,6 +1098,7 @@ typedef struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1092,6 +1100,7 @@ typedef struct {
</span>  
  typedef struct {
      STRUCT_STAT st;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -671,7 +671,7 @@ diff --git a/tls.c b/tls.c
</span> diff -Nurp a/proto.h b/proto.h
 --- a/proto.h
 +++ b/proto.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -339,6 +339,8 @@ int do_lstat(const char *fname, STRUCT_S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -286,6 +286,8 @@ int do_lstat(const char *fname, STRUCT_S
</span>  int do_fstat(int fd, STRUCT_STAT *st);
  OFF_T do_lseek(int fd, OFF_T offset, int whence);
  int do_setattrlist_times(const char *fname, STRUCT_STAT *stp);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -691,7 +691,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  --omit-dir-times, -O     omit directories from --times
  --omit-link-times, -J    omit symlinks from --times
  --super                  receiver attempts super-user activities
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1431,6 +1432,9 @@ transferred.  If your OS does not suppor
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1429,6 +1430,9 @@ transferred.  If your OS does not suppor
</span>  will silently ignore this option.  Note also that some filesystems are
  mounted to avoid updating the atime on read access even without the
  O_NOATIME flag being set.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -701,7 +701,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  .IP "\fB\-\-omit-dir-times\fP, \fB\-O\fP"
  This tells rsync to omit directories when it is preserving modification
  times (see \fB\-\-times\fP).  If NFS is sharing the directories on the receiving
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2630,7 +2634,7 @@ also be output, but only if the receivin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2666,7 +2670,7 @@ also be output, but only if the receivin
</span>  output of other verbose messages).
  .IP
  The "%i" escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -710,7 +710,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  of update being done, \fBX\fP is replaced by the file-type, and the other
  letters represent attributes that may be output if they are being modified.
  .IP
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2705,6 +2709,9 @@ happens when a symlink or directory is u
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2741,6 +2745,9 @@ happens when a symlink or directory is u
</span>  The \fBa\fP means that the ACL information changed.
  .IP o
  The \fBx\fP means that the extended attribute information changed.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -731,7 +731,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  --omit-dir-times, -O     omit directories from --times
  --omit-link-times, -J    omit symlinks from --times
  --super                  receiver attempts super-user activities
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1314,6 +1315,11 @@ mounted to avoid updating the atime on r
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1313,6 +1314,11 @@ mounted to avoid updating the atime on r
</span>  O_NOATIME flag being set.</p>
  </dd>
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -743,7 +743,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  <dt><code>--omit-dir-times</code>, <code>-O</code></dt><dd>
  <p>This tells rsync to omit directories when it is preserving modification
  times (see <code>--times</code>).  If NFS is sharing the directories on the receiving
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2460,7 +2466,7 @@ also be output, but only if the receivin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2492,7 +2498,7 @@ also be output, but only if the receivin
</span>  (you can use <code>-vv</code> with older versions of rsync, but that also turns on the
  output of other verbose messages).</p>
  <p>The &quot;%i&quot; escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -752,7 +752,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  of update being done, <strong>X</strong> is replaced by the file-type, and the other
  letters represent attributes that may be output if they are being modified.</p>
  <p>The update types that replace the <strong>Y</strong> are as follows:</p>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2514,6 +2520,8 @@ means that the access time will be set t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2546,6 +2552,8 @@ means that the access time will be set t
</span>  happens when a symlink or directory is updated.</li>
  <li>The <code>a</code> means that the ACL information changed.</li>
  <li>The <code>x</code> means that the extended attribute information changed.</li>
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/rsync/files/patch-fileflags.diff b/net/rsync/files/fileflags.diff
</span>similarity index 94%
rename from net/rsync/files/patch-fileflags.diff
rename to net/rsync/files/fileflags.diff
<span style='display:block; white-space:pre;color:#808080;'>index 8238094d375..df4e0fcf18c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/rsync/files/patch-fileflags.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/rsync/files/fileflags.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,11 +7,11 @@ To use this patch, run these commands for a successful build:
</span>     ./configure                         (optional if already run)
     make
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-based-on: a8fc8fc2d22ba7243b96decb91c586682a05e4a1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+based-on: 194cee671d5e178f20c4494f41911fa8db942935
</span> diff --git a/compat.c b/compat.c
 --- a/compat.c
 +++ b/compat.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -38,12 +38,14 @@ extern int checksum_seed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -39,12 +39,14 @@ extern int checksum_seed;
</span>  extern int basis_dir_cnt;
  extern int prune_empty_dirs;
  extern int protocol_version;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,7 +26,7 @@ diff --git a/compat.c b/compat.c
</span>  extern int xfer_flags_as_varint;
  extern int need_messages_from_generator;
  extern int delete_mode, delete_before, delete_during, delete_after;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -74,7 +76,7 @@ int inplace_partial = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -75,7 +77,7 @@ int inplace_partial = 0;
</span>  int do_negotiated_strings = 0;
  
  /* These index values are for the file-list's extra-attribute array. */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,7 +35,7 @@ diff --git a/compat.c b/compat.c
</span>  
  int receiver_symlink_times = 0; /* receiver can set the time on a symlink */
  int sender_symlink_iconv = 0; /* sender should convert symlink content */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -468,6 +470,8 @@ void setup_protocol(int f_out,int f_in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -561,6 +563,8 @@ void setup_protocol(int f_out,int f_in)
</span>           uid_ndx = ++file_extra_cnt;
        if (preserve_gid)
                gid_ndx = ++file_extra_cnt;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -44,7 +44,7 @@ diff --git a/compat.c b/compat.c
</span>   if (preserve_acls && !am_sender)
                acls_ndx = ++file_extra_cnt;
        if (preserve_xattrs)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -623,6 +627,10 @@ void setup_protocol(int f_out,int f_in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -714,6 +718,10 @@ void setup_protocol(int f_out,int f_in)
</span>           want_xattr_optim = protocol_version >= 31 && !(compat_flags & CF_AVOID_XATTR_OPTIM);
                proper_seed_order = compat_flags & CF_CHKSUM_SEED_FIX ? 1 : 0;
                xfer_flags_as_varint = compat_flags & CF_VARINT_FLIST_FLAGS ? 1 : 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -111,7 +111,7 @@ diff --git a/flist.c b/flist.c
</span>  extern int delete_during;
  extern int missing_args;
  extern int eol_nulls;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -382,6 +383,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -378,6 +379,9 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>  {
        static time_t modtime, atime;
        static mode_t mode;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -121,7 +121,7 @@ diff --git a/flist.c b/flist.c
</span>  #ifdef SUPPORT_HARD_LINKS
        static int64 dev;
  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -425,6 +429,14 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -421,6 +425,14 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>           xflags |= XMIT_SAME_MODE;
        else
                mode = file->mode;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -136,7 +136,7 @@ diff --git a/flist.c b/flist.c
</span>  
        if (preserve_devices && IS_DEVICE(mode)) {
                if (protocol_version < 28) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -575,6 +587,10 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -571,6 +583,10 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
</span>           write_varint(f, F_MOD_NSEC(file));
        if (!(xflags & XMIT_SAME_MODE))
                write_int(f, to_wire_mode(mode));
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,7 +147,7 @@ diff --git a/flist.c b/flist.c
</span>   if (atimes_ndx && !S_ISDIR(mode) && !(xflags & XMIT_SAME_ATIME))
                write_varlong(f, atime, 4);
        if (preserve_uid && !(xflags & XMIT_SAME_UID)) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -666,6 +682,9 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -662,6 +678,9 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>  {
        static int64 modtime, atime;
        static mode_t mode;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -157,7 +157,7 @@ diff --git a/flist.c b/flist.c
</span>  #ifdef SUPPORT_HARD_LINKS
        static int64 dev;
  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -775,6 +794,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -771,6 +790,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>                   mode = first->mode;
                        if (atimes_ndx && !S_ISDIR(mode))
                                atime = F_ATIME(first);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -168,7 +168,7 @@ diff --git a/flist.c b/flist.c
</span>                   if (preserve_uid)
                                uid = F_OWNER(first);
                        if (preserve_gid)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -826,6 +849,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -822,6 +845,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>  
        if (chmod_modes && !S_ISLNK(mode) && mode)
                mode = tweak_mode(mode, chmod_modes);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -179,7 +179,7 @@ diff --git a/flist.c b/flist.c
</span>  
        if (preserve_uid && !(xflags & XMIT_SAME_UID)) {
                if (protocol_version < 30)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -984,6 +1011,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -980,6 +1007,10 @@ static struct file_struct *recv_file_entry(int f, struct file_list *flist, int x
</span>   }
  #endif
        file->mode = mode;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -190,7 +190,7 @@ diff --git a/flist.c b/flist.c
</span>   if (preserve_uid)
                F_OWNER(file) = uid;
        if (preserve_gid) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1383,6 +1414,10 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1377,6 +1408,10 @@ struct file_struct *make_file(const char *fname, struct file_list *flist,
</span>   }
  #endif
        file->mode = st.st_mode;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -320,7 +320,7 @@ diff --git a/log.c b/log.c
</span> diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -27,6 +27,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,6 +28,9 @@
</span>  #include <locale.h>
  #endif
  #include <popt.h>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -330,7 +330,7 @@ diff --git a/main.c b/main.c
</span>  
  extern int dry_run;
  extern int list_only;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -53,6 +56,7 @@ extern int copy_unsafe_links;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -54,6 +57,7 @@ extern int copy_unsafe_links;
</span>  extern int keep_dirlinks;
  extern int preserve_hard_links;
  extern int protocol_version;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -338,7 +338,7 @@ diff --git a/main.c b/main.c
</span>  extern int file_total;
  extern int recurse;
  extern int xfer_dirs;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -951,6 +955,22 @@ static int do_recv(int f_in, int f_out, char *local_name)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -944,6 +948,22 @@ static int do_recv(int f_in, int f_out, char *local_name)
</span>    * points to an identical file won't be replaced by the referent. */
        copy_links = copy_dirlinks = copy_unsafe_links = 0;
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -364,7 +364,7 @@ diff --git a/main.c b/main.c
</span> diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -56,6 +56,7 @@ int preserve_hard_links = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,6 +57,7 @@ int preserve_hard_links = 0;
</span>  int preserve_acls = 0;
  int preserve_xattrs = 0;
  int preserve_perms = 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -372,7 +372,7 @@ diff --git a/options.c b/options.c
</span>  int preserve_executability = 0;
  int preserve_devices = 0;
  int preserve_specials = 0;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -92,6 +93,7 @@ int numeric_ids = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -93,6 +94,7 @@ int numeric_ids = 0;
</span>  int msgs2stderr = 0;
  int allow_8bit_chars = 0;
  int force_delete = 0;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -380,7 +380,7 @@ diff --git a/options.c b/options.c
</span>  int io_timeout = 0;
  int prune_empty_dirs = 0;
  int use_qsort = 0;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -657,6 +659,11 @@ static void print_capabilities(enum logcode f)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -664,6 +666,11 @@ static void print_info_flags(enum logcode f)
</span>  #endif
                        "prealloc",
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -389,10 +389,10 @@ diff --git a/options.c b/options.c
</span> +#endif
 +                      "file-flags",
 +
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        "*" /* All options after this point are hidden w/o -V -V */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "*Optimizations",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span>  #ifndef HAVE_SIMD
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                "no "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -818,6 +825,8 @@ static struct poptOption long_options[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -816,6 +823,8 @@ static struct poptOption long_options[] = {
</span>    {"perms",           'p', POPT_ARG_VAL,    &preserve_perms, 1, 0, 0 },
    {"no-perms",         0,  POPT_ARG_VAL,    &preserve_perms, 0, 0, 0 },
    {"no-p",             0,  POPT_ARG_VAL,    &preserve_perms, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -401,7 +401,7 @@ diff --git a/options.c b/options.c
</span>    {"executability",   'E', POPT_ARG_NONE,   &preserve_executability, 0, 0, 0 },
    {"acls",            'A', POPT_ARG_NONE,   0, 'A', 0, 0 },
    {"no-acls",          0,  POPT_ARG_VAL,    &preserve_acls, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -911,6 +920,12 @@ static struct poptOption long_options[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -910,6 +919,12 @@ static struct poptOption long_options[] = {
</span>    {"remove-source-files",0,POPT_ARG_VAL,    &remove_source_files, 1, 0, 0 },
    {"force",            0,  POPT_ARG_VAL,    &force_delete, 1, 0, 0 },
    {"no-force",         0,  POPT_ARG_VAL,    &force_delete, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -414,7 +414,7 @@ diff --git a/options.c b/options.c
</span>    {"ignore-errors",    0,  POPT_ARG_VAL,    &ignore_errors, 1, 0, 0 },
    {"no-ignore-errors", 0,  POPT_ARG_VAL,    &ignore_errors, 0, 0, 0 },
    {"max-delete",       0,  POPT_ARG_INT,    &max_delete, 0, 0, 0 },
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1199,6 +1214,14 @@ static void set_refuse_options(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1198,6 +1213,14 @@ static void set_refuse_options(void)
</span>  #ifndef HAVE_SETVBUF
        parse_one_refuse_match(0, "outbuf", list_end);
  #endif
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -429,7 +429,7 @@ diff --git a/options.c b/options.c
</span>  
        /* Now we use the descrip values to actually mark the options for refusal. */
        for (op = long_options; op != list_end; op++) {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2651,6 +2674,9 @@ void server_options(char **args, int *argc_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2646,6 +2669,9 @@ void server_options(char **args, int *argc_p)
</span>   if (xfer_dirs && !recurse && delete_mode && am_sender)
                args[ac++] = "--no-r";
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -439,7 +439,7 @@ diff --git a/options.c b/options.c
</span>   if (do_compression && do_compression_level != CLVL_NOT_SPECIFIED) {
                if (asprintf(&arg, "--compress-level=%d", do_compression_level) < 0)
                        goto oom;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2754,6 +2780,16 @@ void server_options(char **args, int *argc_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2749,6 +2775,16 @@ void server_options(char **args, int *argc_p)
</span>                   args[ac++] = "--delete-excluded";
                if (force_delete)
                        args[ac++] = "--force";
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -479,7 +479,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  --max-delete=NUM         don't delete more than NUM files
  --max-size=SIZE          don't transfer any file larger than SIZE
  --min-size=SIZE          don't transfer any file smaller than SIZE
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -702,6 +706,8 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -700,6 +704,8 @@ your home directory (remove the '=' for that).
</span>  
      Note that `-a` **does not preserve hardlinks**, because finding
      multiply-linked files is expensive.  You must separately specify `-H`.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -488,7 +488,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  
  0.  `--no-OPTION`
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1040,7 +1046,7 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1038,7 +1044,7 @@ your home directory (remove the '=' for that).
</span>      Without this option, if the sending side has replaced a directory with a
      symlink to a directory, the receiving side will delete anything that is in
      the way of the new symlink, including a directory hierarchy (as long as
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -497,7 +497,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  
      See also `--keep-dirlinks` for an analogous option for the receiving side.
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1226,6 +1232,29 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1224,6 +1230,29 @@ your home directory (remove the '=' for that).
</span>      those used by `--fake-super`) unless you repeat the option (e.g. `-XX`).
      This "copy all xattrs" mode cannot be used with `--fake-super`.
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -527,7 +527,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  0.  `--chmod=CHMOD`
  
      This option tells rsync to apply one or more comma-separated "chmod" modes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1685,7 +1714,7 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1686,7 +1715,7 @@ your home directory (remove the '=' for that).
</span>      option a step farther: each missing arg will become a deletion request of
      the corresponding destination file on the receiving side (should it exist).
      If the destination file is a non-empty directory, it will only be
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -536,7 +536,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>      that, this option is independent of any other type of delete processing.
  
      The missing source files are represented by special file-list entries which
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1696,15 +1725,16 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1697,15 +1726,16 @@ your home directory (remove the '=' for that).
</span>      Tells `--delete` to go ahead and delete files even when there are I/O
      errors.
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -557,7 +557,7 @@ diff --git a/rsync.1.md b/rsync.1.md
</span>  
  0.  `--max-delete=NUM`
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2576,7 +2606,7 @@ your home directory (remove the '=' for that).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2612,7 +2642,7 @@ your home directory (remove the '=' for that).
</span>      output of other verbose messages).
  
      The "%i" escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -679,7 +679,7 @@ diff --git a/rsync.c b/rsync.c
</span> diff --git a/rsync.h b/rsync.h
 --- a/rsync.h
 +++ b/rsync.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -68,7 +68,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -69,7 +69,7 @@
</span>  
  /* The following XMIT flags require an rsync that uses a varint for the flag values */
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -688,7 +688,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define XMIT_RESERVED_17 (1<<17)   /* reserved for future crtimes use */
  
  /* These flags are used in the live flist data. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -181,6 +181,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -182,6 +182,7 @@
</span>  #define ATTRS_SKIP_MTIME (1<<1)
  #define ATTRS_ACCURATE_TIME   (1<<2)
  #define ATTRS_SKIP_ATIME      (1<<3)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -696,7 +696,7 @@ diff --git a/rsync.h b/rsync.h
</span>  
  #define MSG_FLUSH     2
  #define FULL_FLUSH    1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -208,6 +209,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -209,6 +210,7 @@
</span>  #define ITEM_REPORT_GROUP (1<<6)
  #define ITEM_REPORT_ACL (1<<7)
  #define ITEM_REPORT_XATTR (1<<8)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -704,7 +704,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define ITEM_BASIS_TYPE_FOLLOWS (1<<11)
  #define ITEM_XNAME_FOLLOWS (1<<12)
  #define ITEM_IS_NEW (1<<13)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -548,6 +550,31 @@ typedef unsigned int size_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -550,6 +552,31 @@ typedef unsigned int size_t;
</span>  #endif
  #endif
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -736,7 +736,7 @@ diff --git a/rsync.h b/rsync.h
</span>  /* Find a variable that is either exactly 32-bits or longer.
   * If some code depends on 32-bit truncation, it will need to
   * take special action in a "#if SIZEOF_INT32 > 4" section. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -761,6 +788,7 @@ extern int pathname_ndx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,6 +790,7 @@ extern int pathname_ndx;
</span>  extern int depth_ndx;
  extern int uid_ndx;
  extern int gid_ndx;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -744,7 +744,7 @@ diff --git a/rsync.h b/rsync.h
</span>  extern int acls_ndx;
  extern int xattrs_ndx;
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -811,6 +839,11 @@ extern int xattrs_ndx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -813,6 +841,11 @@ extern int xattrs_ndx;
</span>  /* When the associated option is on, all entries will have these present: */
  #define F_OWNER(f) REQ_EXTRA(f, uid_ndx)->unum
  #define F_GROUP(f) REQ_EXTRA(f, gid_ndx)->unum
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -958,7 +958,7 @@ diff --git a/t_stub.c b/t_stub.c
</span>  int preserve_times = 0;
  int preserve_xattrs = 0;
  int preserve_perms = 0;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -109,3 +111,23 @@ filter_rule_list daemon_filter_list;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -110,3 +112,23 @@ filter_rule_list daemon_filter_list;
</span>  {
        return cst ? 0 : 0;
  }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1079,7 +1079,7 @@ diff --git a/util.c b/util.c
</span> diff --git a/xattrs.c b/xattrs.c
 --- a/xattrs.c
 +++ b/xattrs.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1216,7 +1216,7 @@ int set_stat_xattr(const char *fname, struct file_struct *file, mode_t new_mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1204,7 +1204,7 @@ int set_stat_xattr(const char *fname, struct file_struct *file, mode_t new_mode)
</span>   mode = (fst.st_mode & _S_IFMT) | (fmode & ACCESSPERMS)
             | (S_ISDIR(fst.st_mode) ? 0700 : 0600);
        if (fst.st_mode != mode)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1091,7 +1091,7 @@ diff --git a/xattrs.c b/xattrs.c
</span> diff -Nurp a/proto.h b/proto.h
 --- a/proto.h
 +++ b/proto.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -299,6 +299,8 @@ int read_ndx_and_attrs(int f_in, int f_o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -246,6 +246,8 @@ int read_ndx_and_attrs(int f_in, int f_o
</span>  void free_sums(struct sum_struct *s);
  mode_t dest_mode(mode_t flist_mode, mode_t stat_mode, int dflt_perms,
                 int exists);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1100,7 +1100,7 @@ diff -Nurp a/proto.h b/proto.h
</span>  int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
                   const char *fnamecmp, int flags);
  void sig_int(int sig_num);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -321,11 +323,12 @@ int do_unlink(const char *fname);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -268,11 +270,12 @@ int do_unlink(const char *fname);
</span>  int do_symlink(const char *lnk, const char *fname);
  ssize_t do_readlink(const char *path, char *buf, size_t bufsiz);
  int do_link(const char *old_path, const char *new_path);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1138,7 +1138,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  --max-delete=NUM         don't delete more than NUM files
  --max-size=SIZE          don't transfer any file larger than SIZE
  --min-size=SIZE          don't transfer any file smaller than SIZE
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -765,6 +769,8 @@ omission).  The only exception to the ab
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,6 +767,8 @@ omission).  The only exception to the ab
</span>  .IP
  Note that \fB\-a\fP \fBdoes not preserve hardlinks\fP, because finding
  multiply-linked files is expensive.  You must separately specify \fB\-H\fP.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1147,7 +1147,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  .IP "\fB\-\-no-OPTION\fP"
  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-": only options that
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1094,7 +1100,7 @@ to non-directories to be affected, as th
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1092,7 +1098,7 @@ to non-directories to be affected, as th
</span>  Without this option, if the sending side has replaced a directory with a
  symlink to a directory, the receiving side will delete anything that is in
  the way of the new symlink, including a directory hierarchy (as long as
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1156,7 +1156,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  .IP
  See also \fB\-\-keep-dirlinks\fP for an analogous option for the receiving side.
  .IP
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1303,6 +1309,25 @@ receiver-only rule that excludes all nam
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1301,6 +1307,25 @@ receiver-only rule that excludes all nam
</span>  Note that the \fB\-X\fP option does not copy rsync's special xattr values (e.g.
  those used by \fB\-\-fake-super\fP) unless you repeat the option (e.g. \fB\-XX\fP).
  This "copy all xattrs" mode cannot be used with \fB\-\-fake-super\fP.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1182,7 +1182,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  .IP "\fB\-\-chmod=CHMOD\fP"
  This option tells rsync to apply one or more comma-separated "chmod" modes
  to the permission of the files in the transfer.  The resulting value is
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1720,7 +1745,7 @@ This option takes the behavior of (the i
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1723,7 +1748,7 @@ This option takes the behavior of (the i
</span>  option a step farther: each missing arg will become a deletion request of
  the corresponding destination file on the receiving side (should it exist).
  If the destination file is a non-empty directory, it will only be
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1191,7 +1191,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  that, this option is independent of any other type of delete processing.
  .IP
  The missing source files are represented by special file-list entries which
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1728,14 +1753,15 @@ display as a "\fB*missing\fP" entry in t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1731,14 +1756,15 @@ display as a "\fB*missing\fP" entry in t
</span>  .IP "\fB\-\-ignore-errors\fP"
  Tells \fB\-\-delete\fP to go ahead and delete files even when there are I/O
  errors.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1211,7 +1211,7 @@ diff -Nurp a/rsync.1 b/rsync.1
</span>  .IP "\fB\-\-max-delete=NUM\fP"
  This tells rsync not to delete more than NUM files or directories.  If that
  limit is exceeded, all further deletions are skipped through the end of the
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2604,7 +2630,7 @@ also be output, but only if the receivin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2640,7 +2666,7 @@ also be output, but only if the receivin
</span>  output of other verbose messages).
  .IP
  The "%i" escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1243,7 +1243,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  --max-delete=NUM         don't delete more than NUM files
  --max-size=SIZE          don't transfer any file larger than SIZE
  --min-size=SIZE          don't transfer any file smaller than SIZE
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -673,7 +677,9 @@ recursion and want to preserve almost ev
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -672,7 +676,9 @@ recursion and want to preserve almost ev
</span>  omission).  The only exception to the above equivalence is when
  <code>--files-from</code> is specified, in which case <code>-r</code> is not implied.</p>
  <p>Note that <code>-a</code> <strong>does not preserve hardlinks</strong>, because finding
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1254,7 +1254,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  </dd>
  
  <dt><code>--no-OPTION</code></dt><dd>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -993,7 +999,7 @@ to non-directories to be affected, as th
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -992,7 +998,7 @@ to non-directories to be affected, as th
</span>  <p>Without this option, if the sending side has replaced a directory with a
  symlink to a directory, the receiving side will delete anything that is in
  the way of the new symlink, including a directory hierarchy (as long as
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1263,7 +1263,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  <p>See also <code>--keep-dirlinks</code> for an analogous option for the receiving side.</p>
  <p><code>--copy-dirlinks</code> applies to all symlinks to directories in the source.  If
  you want to follow only a few specified symlinks, a trick you can use is to
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1173,6 +1179,33 @@ those used by <code>--fake-super</code>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1172,6 +1178,33 @@ those used by <code>--fake-super</code>)
</span>  This &quot;copy all xattrs&quot; mode cannot be used with <code>--fake-super</code>.</p>
  </dd>
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1297,7 +1297,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  <dt><code>--chmod=CHMOD</code></dt><dd>
  <p>This option tells rsync to apply one or more comma-separated &quot;chmod&quot; modes
  to the permission of the files in the transfer.  The resulting value is
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1598,7 +1631,7 @@ is no longer there.</p>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1600,7 +1633,7 @@ is no longer there.</p>
</span>  option a step farther: each missing arg will become a deletion request of
  the corresponding destination file on the receiving side (should it exist).
  If the destination file is a non-empty directory, it will only be
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1306,7 +1306,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  that, this option is independent of any other type of delete processing.</p>
  <p>The missing source files are represented by special file-list entries which
  display as a &quot;<code>*missing</code>&quot; entry in the <code>--list-only</code> output.</p>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1609,13 +1642,14 @@ display as a &quot;<code>*missing</code>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1611,13 +1644,14 @@ display as a &quot;<code>*missing</code>
</span>  errors.</p>
  </dd>
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1325,7 +1325,7 @@ diff -Nurp a/rsync.1.html b/rsync.1.html
</span>  </dd>
  
  <dt><code>--max-delete=NUM</code></dt><dd>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2426,7 +2460,7 @@ also be output, but only if the receivin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2458,7 +2492,7 @@ also be output, but only if the receivin
</span>  (you can use <code>-vv</code> with older versions of rsync, but that also turns on the
  output of other verbose messages).</p>
  <p>The &quot;%i&quot; escape has a cryptic output that is 11 letters long.  The general
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/rsync/files/patch-acls-unpack-error.diff b/net/rsync/files/patch-acls-unpack-error.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 66923fa75ba..bc882598d7d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/rsync/files/patch-acls-unpack-error.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/rsync/files/patch-acls-unpack-error.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,6 @@
</span> This patch causes rsync to report which files caused the unpack_smb_acl()
 error, instead of just noting that one happened. This allows the end
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use to check the ACL of the reported file by hand.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+user to check the ACL of the reported file by hand.
</span> 
 To use this patch, run these commands for a successful build:
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -13,10 +13,9 @@ To use this patch, run these commands for a successful build:
</span>     ./configure
     make
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/acls.c b/acls.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/acls.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/acls.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -526,6 +526,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/acls.c       2020-06-25 22:54:21.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/acls.c       2020-07-06 16:31:26.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -519,6 +519,7 @@
</span>  
                sys_acl_free_acl(sacl);
                if (!ok) {
</pre><pre style='margin:0'>

</pre>