[packages/rsync] up to 3.2.4 (fixes CVE-2018-25032 in bundled zlib)

atler atler at pld-linux.org
Sun Apr 17 20:45:17 CEST 2022


commit dd229fe46c546dd6bcfed53ddf12b5b3cdb0b471
Author: Jan Palus <atler at pld-linux.org>
Date:   Sun Apr 17 20:37:56 2022 +0200

    up to 3.2.4 (fixes CVE-2018-25032 in bundled zlib)
    
    - start building against system zlib
    - lchmod patch seems obsolete

 lchmod.patch       | 21 ---------------------
 rsync-config.patch | 42 +++++++++++++++++++++---------------------
 rsync.spec         | 12 ++++++------
 3 files changed, 27 insertions(+), 48 deletions(-)
---
diff --git a/rsync.spec b/rsync.spec
index 1eeb9e1..4196fc6 100644
--- a/rsync.spec
+++ b/rsync.spec
@@ -17,22 +17,21 @@ Summary(uk.UTF-8):	Програма для ефективного віддале
 Summary(zh_CN.UTF-8):	[通讯]传输工具
 Summary(zh_TW.UTF-8):	[喙啪]$(B6G?i火(c(B
 Name:		rsync
-Version:	3.2.3
-Release:	4
+Version:	3.2.4
+Release:	1
 Epoch:		1
 License:	GPL v3+
 Group:		Networking/Utilities
 Source0:	https://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
-# Source0-md5:	209f8326f5137d8817a6276d9577a2f1
+# Source0-md5:	26f1c64259fbd2ed7a59b28d2787ecf2
 Source1:	https://rsync.samba.org/ftp/rsync/%{name}-patches-%{version}.tar.gz
-# Source1-md5:	884c872b55c7431f4c4e8d8bf182fafa
+# Source1-md5:	2ed038a3d7dbb1e755fd9a8bda7262b2
 Source2:	%{name}.inet
 Source3:	%{name}.init
 Source4:	%{name}.sysconfig
 Source5:	%{name}d.logrotate
 Patch0:		%{name}-config.patch
 Patch1:		%{name}-fadvise.patch
-Patch2:		lchmod.patch
 URL:		https://rsync.samba.org/
 BuildRequires:	acl-devel
 BuildRequires:	autoconf >= 2.69
@@ -45,6 +44,7 @@ BuildRequires:	python3 >= 1:3
 BuildRequires:	python3-commonmark
 BuildRequires:	rpmbuild(macros) >= 1.318
 BuildRequires:	xxHash-devel >= 0.8.0
+BuildRequires:	zlib-devel
 BuildRequires:	zstd-devel
 %if %{with tests}
 BuildRequires:	fakeroot >= 1.26
@@ -170,7 +170,6 @@ techniczna nowego algorytmu została również dołączona do pakietu.
 %setup -q -b1
 %patch0 -p1
 %{?with_fadvise:%patch1 -p1}
-%patch2 -p1
 
 sed -i -e 's|#!/usr/bin/env bash|#!/bin/bash|' rsync-ssl
 
@@ -184,6 +183,7 @@ cp -f /usr/share/automake/config.sub .
 	--disable-debug \
 	--enable-ipv6 \
 	--enable-xattr-support \
+	--with-included-zlib=no \
 	%{?with_rsh:--with-rsh=rsh} \
 	--with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
 %{__make} proto
diff --git a/lchmod.patch b/lchmod.patch
deleted file mode 100644
index 88bad5a..0000000
--- a/lchmod.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- rsync-3.2.3/syscall.c~	2020-07-28 01:36:55.000000000 +0200
-+++ rsync-3.2.3/syscall.c	2020-11-06 17:26:04.220502740 +0100
-@@ -232,7 +232,8 @@ int do_chmod(const char *path, mode_t mo
- 	RETURN_ERROR_IF_RO_OR_LO;
- #ifdef HAVE_LCHMOD
- 	code = lchmod(path, mode & CHMOD_BITS);
--#else
-+	if (code < 0 && errno == ENOTSUP) {
-+#endif
- 	if (S_ISLNK(mode)) {
- # if defined HAVE_SETATTRLIST
- 		struct attrlist attrList;
-@@ -247,6 +248,8 @@ int do_chmod(const char *path, mode_t mo
- # endif
- 	} else
- 		code = chmod(path, mode & CHMOD_BITS); /* DISCOURAGED FUNCTION */
-+#ifdef HAVE_LCHMOD
-+	}
- #endif /* !HAVE_LCHMOD */
- 	if (code != 0 && (preserve_perms || preserve_executability))
- 		return code;
diff --git a/rsync-config.patch b/rsync-config.patch
index 58416c7..28f29e6 100644
--- a/rsync-config.patch
+++ b/rsync-config.patch
@@ -13,14 +13,14 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
 --- rsync-3.2.3/rsync.1.orig	2020-08-07 05:57:26.000000000 +0200
 +++ rsync-3.2.3/rsync.1	2020-08-16 14:32:06.591094708 +0200
 @@ -3423,7 +3423,7 @@
- version of this option (above) for some extra details.
  .IP "\fB\-\-config=FILE\fP"
  This specifies an alternate config file than the default.  This is only
--relevant when \fB\-\-daemon\fP is specified.  The default is /etc/rsyncd.conf
-+relevant when \fB\-\-daemon\fP is specified.  The default is /etc/rsyncd/rsyncd.conf
- unless the daemon is running over a remote shell program and the remote
- user is not the super-user; in that case the default is rsyncd.conf in the
- current directory (typically $HOME).
+ relevant when \fB\-\-daemon\fP is specified.  The default is
+-/etc/rsyncd.conf unless the daemon is running over a remote shell program
++/etc/rsyncd/rsyncd.conf unless the daemon is running over a remote shell program
+ and the remote user is not the super-user; in that case the default is
+ rsyncd.conf in the current directory (typically $HOME).
+ .IP "\fB\-\-dparam=OVERRIDE\fP, \fB\-M\fP"
 @@ -4260,7 +4260,7 @@
  .P
  .SH "FILES"
@@ -33,22 +33,22 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
 --- rsync-3.2.3/rsync.1.md.orig	2020-07-28 00:56:48.000000000 +0200
 +++ rsync-3.2.3/rsync.1.md	2020-08-16 14:33:28.887315538 +0200
 @@ -3380,7 +3380,7 @@
- 0.  `--config=FILE`
  
      This specifies an alternate config file than the default.  This is only
--    relevant when `--daemon` is specified.  The default is /etc/rsyncd.conf
-+    relevant when `--daemon` is specified.  The default is /etc/rsyncd/rsyncd.conf
-     unless the daemon is running over a remote shell program and the remote
-     user is not the super-user; in that case the default is rsyncd.conf in the
-     current directory (typically $HOME).
+     relevant when [`--daemon`](#dopt) is specified.  The default is
+-    /etc/rsyncd.conf unless the daemon is running over a remote shell program
++    /etc/rsyncd/rsyncd.conf unless the daemon is running over a remote shell program
+     and the remote user is not the super-user; in that case the default is
+     rsyncd.conf in the current directory (typically $HOME).
+ 
 @@ -4117,7 +4117,7 @@
  
- # FILES
+ ## FILES
  
 -/etc/rsyncd.conf or rsyncd.conf
 +/etc/rsyncd/rsyncd.conf or rsyncd.conf
  
- # SEE ALSO
+ ## SEE ALSO
  
 --- rsync-3.2.3/rsyncd.conf.5.orig	2020-08-07 05:57:26.000000000 +0200
 +++ rsync-3.2.3/rsyncd.conf.5	2020-08-16 18:54:27.322486513 +0200
@@ -68,7 +68,7 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
 -name (such as \fB/etc/rsyncd.secrets\fP).  The file must normally not be
 +name (such as \fB/etc/rsyncd/rsyncd.secrets\fP).  The file must normally not be
  readable by "other"; see "strict modes".  If the file is not found or is
- rejected, no logins for a "user auth" module will be possible.
+ rejected, no logins for an "auth users" module will be possible.
  .IP "\fBstrict\ modes\fP"
 @@ -1092,7 +1092,7 @@
  global values that will affect connections (such as \fBmotd\ file\fP), or globals
@@ -123,7 +123,7 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
 --- rsync-3.2.3/rsyncd.conf.5.md.orig	2020-08-16 14:34:12.567078905 +0200
 +++ rsync-3.2.3/rsyncd.conf.5.md	2020-08-16 18:53:50.806017673 +0200
 @@ -417,7 +417,7 @@
-     This parameter specifies the file to use to support the "max connections"
+     This parameter specifies the file to use to support the "[max connections](#)"
      parameter. The rsync daemon uses record locking on this file to ensure that
      the max connections limit is not exceeded for the modules sharing the lock
 -    file.  The default is `/var/run/rsyncd.lock`.
@@ -137,8 +137,8 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
      There is no default for the "secrets file" parameter, you must choose a
 -    name (such as `/etc/rsyncd.secrets`).  The file must normally not be
 +    name (such as `/etc/rsyncd/rsyncd.secrets`).  The file must normally not be
-     readable by "other"; see "strict modes".  If the file is not found or is
-     rejected, no logins for a "user auth" module will be possible.
+     readable by "other"; see "[strict modes](#)".  If the file is not found or is
+     rejected, no logins for an "[auth users](#)" module will be possible.
  
 @@ -1075,17 +1075,17 @@
  global values that will affect connections (such as `motd file`), or globals
@@ -162,7 +162,7 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
 +stay in effect), and then include any `/etc/rsyncd/rsyncd.d/*.conf` files (defining
  modules without any global-value cross-talk).
  
- # AUTHENTICATION STRENGTH
+ ## AUTHENTICATION STRENGTH
 @@ -1189,17 +1189,17 @@
  >         path = /data/cvs
  >         comment = CVS repository (requires authentication)
@@ -177,10 +177,10 @@ diff -ur rsync-3.0.8.orig/rsync.h rsync-3.0.8/rsync.h
  >     tridge:mypass
  >     susan:herpass
  
- # FILES
+ ## FILES
  
 -/etc/rsyncd.conf or rsyncd.conf
 +/etc/rsyncd/rsyncd.conf or rsyncd.conf
  
- # SEE ALSO
+ ## SEE ALSO
  
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/rsync.git/commitdiff/cc49036681ff555c95a8a0f4597405374b01c2e3



More information about the pld-cvs-commit mailing list