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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/587cdd943c90eabd632f4bc975e10a20b88cc179">https://github.com/macports/macports-ports/commit/587cdd943c90eabd632f4bc975e10a20b88cc179</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 587cdd943c9 rsync: Update to 3.4.1
</span>587cdd943c9 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 587cdd943c90eabd632f4bc975e10a20b88cc179
</span>Author: Ryan Carsten Schmidt <ryandesign@macports.org>
AuthorDate: Thu Jan 16 23:51:49 2025 -0600

<span style='display:block; white-space:pre;color:#404040;'>    rsync: Update to 3.4.1
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/71840
</span>---
 net/rsync/Portfile             | 10 +++++-----
 net/rsync/files/fileflags.diff | 44 +++++++++++++++++++++---------------------
 2 files changed, 27 insertions(+), 27 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 599d328c287..08f640c2721 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;'>@@ -5,11 +5,11 @@ PortGroup           compiler_blacklist_versions 1.0
</span> 
 name                rsync
 conflicts           rsync-hfscomp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             3.3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             3.4.1
</span> revision            0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  e743ad58c56b0bcaaa40625b2294faa63f37dc22 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  7399e9a6708c32d678a72a63219e96f23be0be2336e50fd1348498d07041df90 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    1153969
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  b0f3e9ba2bb2c370a7c08587856e43e163f08d5e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1172739
</span> 
 categories          net
 license             {GPL-3+ OpenSSLException}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,7 +39,7 @@ depends_lib         port:popt \
</span> patch.pre_args-replace  -p0 -p1
 
 # This patch comes from
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://download.samba.org/pub/rsync/src/rsync-patches-3.3.0.tar.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://download.samba.org/pub/rsync/src/rsync-patches-3.4.1.tar.gz
</span> # and needs to be updated with each release.
 # We used to use hfs-compression.diff but it has been deliberately
 # disabled by its developers as of 3.1.3 because it needs to be reworked
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/rsync/files/fileflags.diff b/net/rsync/files/fileflags.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 4901bdb4b77..9a170fd6bb7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/rsync/files/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,7 +7,7 @@ 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: 6c8ca91c731b7bf2b081694bda85b7dadc2b7aff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+based-on: 3305a7a063ab0167cab5bf7029da53abaa9fdb6e
</span> diff --git a/compat.c b/compat.c
 --- a/compat.c
 +++ b/compat.c
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -280,7 +280,7 @@ diff --git a/generator.c b/generator.c
</span>  
  #ifdef SUPPORT_HARD_LINKS
        if (preserve_hard_links && F_HLINK_NOT_FIRST(file)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2107,17 +2131,25 @@ static void touch_up_dirs(struct file_list *flist, int ndx)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2111,17 +2135,25 @@ static void touch_up_dirs(struct file_list *flist, int ndx)
</span>                   continue;
                fname = f_name(file, NULL);
                if (fix_dir_perms)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -574,7 +574,7 @@ diff --git a/rsync.c b/rsync.c
</span>  extern int preserve_executability;
  extern int preserve_mtimes;
  extern int omit_dir_times;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -468,6 +469,39 @@ mode_t dest_mode(mode_t flist_mode, mode_t stat_mode, int dflt_perms,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -471,6 +472,39 @@ mode_t dest_mode(mode_t flist_mode, mode_t stat_mode, int dflt_perms,
</span>   return new_mode;
  }
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -614,7 +614,7 @@ diff --git a/rsync.c b/rsync.c
</span>  static int same_mtime(struct file_struct *file, STRUCT_STAT *st, int extra_accuracy)
  {
  #ifdef ST_MTIME_NSEC
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -544,7 +578,7 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -547,7 +581,7 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span>           if (am_root >= 0) {
                        uid_t uid = change_uid ? (uid_t)F_OWNER(file) : sxp->st.st_uid;
                        gid_t gid = change_gid ? (gid_t)F_GROUP(file) : sxp->st.st_gid;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -623,7 +623,7 @@ diff --git a/rsync.c b/rsync.c
</span>                           /* We shouldn't have attempted to change uid
                                 * or gid unless have the privilege. */
                                rsyserr(FERROR_XFER, errno, "%s %s failed",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -654,7 +688,7 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -657,7 +691,7 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span>  
  #ifdef HAVE_CHMOD
        if (!BITS_EQUAL(sxp->st.st_mode, new_mode, CHMOD_BITS)) {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -632,7 +632,7 @@ diff --git a/rsync.c b/rsync.c
</span>           if (ret < 0) {
                        rsyserr(FERROR_XFER, errno,
                                "failed to set permissions on %s",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -666,6 +700,19 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -669,6 +703,19 @@ int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp,
</span>   }
  #endif
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -652,7 +652,7 @@ diff --git a/rsync.c b/rsync.c
</span>   if (INFO_GTE(NAME, 2) && flags & ATTRS_REPORT) {
                if (updated)
                        rprintf(FCLIENT, "%s\n", fname);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -743,7 +790,8 @@ int finish_transfer(const char *fname, const char *fnametmp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -746,7 +793,8 @@ int finish_transfer(const char *fname, const char *fnametmp,
</span>  
        /* Change permissions before putting the file into place. */
        set_file_attrs(fnametmp, file, NULL, fnamecmp,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -662,7 +662,7 @@ diff --git a/rsync.c b/rsync.c
</span>  
        /* move tmp file over real file */
        if (DEBUG_GTE(RECV, 1))
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -760,6 +808,10 @@ int finish_transfer(const char *fname, const char *fnametmp,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,6 +811,10 @@ int finish_transfer(const char *fname, const char *fnametmp,
</span>   }
        if (ret == 0) {
                /* The file was moved into place (not copied), so it's done. */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -685,7 +685,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define XMIT_CRTIME_EQ_MTIME (1<<17)       /* any protocol - restricted by command-line option */
  
  /* These flags are used in the live flist data. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -192,6 +192,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -193,6 +193,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;'>@@ -693,7 +693,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define ATTRS_SKIP_CRTIME        (1<<5)
  
  #define MSG_FLUSH     2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -220,6 +221,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -221,6 +222,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;'>@@ -701,7 +701,7 @@ diff --git a/rsync.h b/rsync.h
</span>  #define ITEM_REPORT_CRTIME (1<<10)
  #define ITEM_BASIS_TYPE_FOLLOWS (1<<11)
  #define ITEM_XNAME_FOLLOWS (1<<12)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -587,6 +589,31 @@ typedef unsigned int size_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -588,6 +590,31 @@ typedef unsigned int size_t;
</span>  #define SUPPORT_CRTIMES 1
  #endif
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -733,7 +733,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;'>-@@ -818,6 +845,7 @@ extern int pathname_ndx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -819,6 +846,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;'>@@ -741,7 +741,7 @@ diff --git a/rsync.h b/rsync.h
</span>  extern int acls_ndx;
  extern int xattrs_ndx;
  extern int file_sum_extra_cnt;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -873,6 +901,11 @@ extern int file_sum_extra_cnt;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -874,6 +902,11 @@ extern int file_sum_extra_cnt;
</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;'>@@ -756,7 +756,7 @@ diff --git a/rsync.h b/rsync.h
</span> diff --git a/syscall.c b/syscall.c
 --- a/syscall.c
 +++ b/syscall.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -38,6 +38,7 @@ extern int am_root;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -40,6 +40,7 @@ extern int am_root;
</span>  extern int am_sender;
  extern int read_only;
  extern int list_only;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -764,7 +764,7 @@ diff --git a/syscall.c b/syscall.c
</span>  extern int inplace;
  extern int preallocate_files;
  extern int preserve_perms;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -81,7 +82,23 @@ int do_unlink(const char *path)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -85,7 +86,23 @@ int do_unlink(const char *path)
</span>  {
        if (dry_run) return 0;
        RETURN_ERROR_IF_RO_OR_LO;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -789,7 +789,7 @@ diff --git a/syscall.c b/syscall.c
</span>  }
  
  #ifdef SUPPORT_LINKS
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -146,14 +163,35 @@ int do_link(const char *old_path, const char *new_path)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -150,14 +167,35 @@ int do_link(const char *old_path, const char *new_path)
</span>  }
  #endif
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -827,7 +827,7 @@ diff --git a/syscall.c b/syscall.c
</span>  }
  
  int do_mknod(const char *pathname, mode_t mode, dev_t dev)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -193,7 +231,7 @@ int do_mknod(const char *pathname, mode_t mode, dev_t dev)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -197,7 +235,7 @@ int do_mknod(const char *pathname, mode_t mode, dev_t dev)
</span>                   return -1;
                close(sock);
  #ifdef HAVE_CHMOD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -836,7 +836,7 @@ diff --git a/syscall.c b/syscall.c
</span>  #else
                return 0;
  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -210,7 +248,22 @@ int do_rmdir(const char *pathname)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -214,7 +252,22 @@ int do_rmdir(const char *pathname)
</span>  {
        if (dry_run) return 0;
        RETURN_ERROR_IF_RO_OR_LO;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -860,7 +860,7 @@ diff --git a/syscall.c b/syscall.c
</span>  }
  
  int do_open(const char *pathname, int flags, mode_t mode)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -229,7 +282,7 @@ int do_open(const char *pathname, int flags, mode_t mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -233,7 +286,7 @@ int do_open(const char *pathname, int flags, mode_t mode)
</span>  }
  
  #ifdef HAVE_CHMOD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -869,7 +869,7 @@ diff --git a/syscall.c b/syscall.c
</span>  {
        static int switch_step = 0;
        int code;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -268,17 +321,72 @@ int do_chmod(const char *path, mode_t mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -272,17 +325,72 @@ int do_chmod(const char *path, mode_t mode)
</span>                   code = chmod(path, mode & CHMOD_BITS); /* DISCOURAGED FUNCTION */
                break;
        }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -946,10 +946,10 @@ diff --git a/syscall.c b/syscall.c
</span> diff --git a/t_stub.c b/t_stub.c
 --- a/t_stub.c
 +++ b/t_stub.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -29,6 +29,8 @@ int protect_args = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,6 +28,8 @@ int protect_args = 0;
</span>  int module_id = -1;
  int relative_paths = 0;
<span style='display:block; white-space:pre;background:#ffe0e0;'>- int module_dirlen = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned int module_dirlen = 0;
</span> +int force_change = 0;
 +int preserve_acls = 0;
  int preserve_xattrs = 0;
</pre><pre style='margin:0'>

</pre>