Fix from upstream for acl code #100981.
authorMike Frysinger <vapier@gentoo.org>
Sun, 16 Oct 2005 23:58:36 +0000 (23:58 +0000)
committerMike Frysinger <vapier@gentoo.org>
Sun, 16 Oct 2005 23:58:36 +0000 (23:58 +0000)
Package-Manager: portage-2.0.53_rc5

net-misc/rsync/ChangeLog
net-misc/rsync/Manifest
net-misc/rsync/files/digest-rsync-2.6.6-r1 [new file with mode: 0644]
net-misc/rsync/files/rsync-2.6.6-acls.patch [new file with mode: 0644]
net-misc/rsync/rsync-2.6.6-r1.ebuild [new file with mode: 0644]

index 445d9ecb2ac506bfb033b322b8b7c789bac8e1c8..50d628f1189e55d90109646a3c0b362c3ba15c2a 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-misc/rsync
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/rsync/ChangeLog,v 1.83 2005/10/13 00:29:57 kito Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/rsync/ChangeLog,v 1.84 2005/10/16 23:58:36 vapier Exp $
+
+*rsync-2.6.6-r1 (17 Oct 2005)
+
+  17 Oct 2005; Mike Frysinger <vapier@gentoo.org>
+  +files/rsync-2.6.6-acls.patch, +rsync-2.6.6-r1.ebuild:
+  Fix from upstream for acl code #100981.
 
   13 Oct 2005; Kito <kito@gentoo.org> rsync-2.6.6.ebuild:
   ~ppc-macos keyword
index 77a98c1709b198a4dd99e4e052f7567e9c4a901a..0599157f8f5a16d58b5cf2abe9d8d678cc890e3b 100644 (file)
@@ -1,13 +1,18 @@
-MD5 b6574cecbc082351516537018dc6fde3 ChangeLog 10958
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 01643920506e7c6671be2168180622d7 ChangeLog 11141
 MD5 e04533ca371c57d742250cc0622c005e files/digest-rsync-2.6.0-r5 204
 MD5 e04533ca371c57d742250cc0622c005e files/digest-rsync-2.6.0-r6 204
 MD5 62972fab38bf033135efad0bd025f65b files/digest-rsync-2.6.3-r1 63
 MD5 837ec8510f315fe348f0a0e13c755c15 files/digest-rsync-2.6.4 63
 MD5 23137ad8bc9a42849cc3b8e1e9efe076 files/digest-rsync-2.6.5 63
 MD5 3ee26e2b37af76a4770448ec745e6f42 files/digest-rsync-2.6.6 63
+MD5 3ee26e2b37af76a4770448ec745e6f42 files/digest-rsync-2.6.6-r1 63
 MD5 d4a2634dfd2e7e9f6e5537c2b6c8af8d files/rsync-2.6.0-cvsignore.patch 797
 MD5 574dc3e5a445650c56e445bd2a5ecc02 files/rsync-2.6.0-livecd-sigmask.patch 1807
 MD5 b447910de9fdd6425c64002fa7d1ab83 files/rsync-2.6.0-sanitize.patch 5671
+MD5 c4757d802d9ddaa65bfeb99fa55fcf1a files/rsync-2.6.6-acls.patch 1627
 MD5 b8cb6d507de74f71738f0f50774c35d0 files/rsync-pathsanitize.patch 235
 MD5 f92735d68f21c6516c8916b484ecd848 files/rsyncd.conf 518
 MD5 39b5aab74752c74d7d600265dd32de05 files/rsyncd.conf.d 348
@@ -17,4 +22,12 @@ MD5 6ad7d546901dc8f5953ba4978b143b2f rsync-2.6.0-r6.ebuild 2544
 MD5 3685ae9a09bfe55c04044538bf81fe59 rsync-2.6.3-r1.ebuild 2009
 MD5 aa87fe072475d63b9476540033b38d01 rsync-2.6.4.ebuild 2001
 MD5 e498c1a53adae08aa9947326d1cde06b rsync-2.6.5.ebuild 2002
+MD5 7d1f54047a8c36e4ed3f5b114dce931c rsync-2.6.6-r1.ebuild 2080
 MD5 cb139d23b5710072b79baf8546b9d7c4 rsync-2.6.6.ebuild 2011
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.2 (GNU/Linux)
+
+iD8DBQFDUum4gIKl8Uu19MoRAsalAJsFJt8VUbvQ+JnBdeuA6JfBBitGZgCfRQ1q
+ijdK0oQZgqD0X6a3/3XXmiY=
+=nO30
+-----END PGP SIGNATURE-----
diff --git a/net-misc/rsync/files/digest-rsync-2.6.6-r1 b/net-misc/rsync/files/digest-rsync-2.6.6-r1
new file mode 100644 (file)
index 0000000..164c37f
--- /dev/null
@@ -0,0 +1 @@
+MD5 30c4e2849cbeae93f55548453865c2f2 rsync-2.6.6.tar.gz 690066
diff --git a/net-misc/rsync/files/rsync-2.6.6-acls.patch b/net-misc/rsync/files/rsync-2.6.6-acls.patch
new file mode 100644 (file)
index 0000000..02a90e9
--- /dev/null
@@ -0,0 +1,55 @@
+Fix from upstream
+
+This revealed that the acls patch was not properly reporting what files
+were being updated when acls were not being preserved.  The attached
+patch should fix this.
+
+http://lists.samba.org/archive/rsync/2005-July/013169.html
+http://lists.samba.org/archive/rsync/2005-July/013174.html
+
+--- rsync-2.6.6/acls.c
++++ rsync-2.6.6/acls.c
+@@ -845,7 +845,7 @@
+               types[] = {SMB_ACL_TYPE_ACCESS, SMB_ACL_TYPE_DEFAULT};
+       int ret = 0;
+       if (!preserve_acls)
+-              return 0;
++              return 1;
+       for (type = &types[0];
+            type < &types[0] + sizeof types / sizeof types[0]
+                && (*type == SMB_ACL_TYPE_ACCESS || S_ISDIR(mode));
+@@ -962,7 +962,7 @@
+               }
+               return ret;
+       }
+-      return 0;
++      return 1;
+ }
+ 
+ void cleanup_keep_backup_acl()
+@@ -992,7 +992,7 @@
+       SMB_ACL_TYPE_T *type,
+               types[] = {SMB_ACL_TYPE_ACCESS, SMB_ACL_TYPE_DEFAULT};
+       if (dry_run || !preserve_acls || S_ISLNK(file->mode))
+-              return 0;
++              return 1;
+       if (file == backup_orig_file) {
+               if (!strcmp(fname, backup_dest_fname))
+                       return set_keep_backup_acl();
+--- rsync-2.6.6/rsync.h
++++ rsync-2.6.6/rsync.h
+@@ -667,12 +667,12 @@
+ #define SEND_ACL(file, f)
+ #define RECEIVE_ACL(file, f)
+ #define SORT_FILE_ACL_INDEX_LISTS()
+-#define SET_ACL(fname, file)                  0 /* checked return value */
++#define SET_ACL(fname, file)                  1 /* checked return value */
+ #define NEXT_ACL_UID()        
+ #define ACL_UID_MAP(uid)
+ #define PUSH_KEEP_BACKUP_ACL(file, orig, dest)
+ #define CLEANUP_KEEP_BACKUP_ACL()
+-#define DUP_ACL(src, orig, mode)              0 /* checked return value */
++#define DUP_ACL(src, orig, mode)              1 /* checked return value */
+ #endif /* SUPPORT_ACLS */
+ #include "smb_acls.h"
+ 
diff --git a/net-misc/rsync/rsync-2.6.6-r1.ebuild b/net-misc/rsync/rsync-2.6.6-r1.ebuild
new file mode 100644 (file)
index 0000000..7685c74
--- /dev/null
@@ -0,0 +1,74 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/rsync/rsync-2.6.6-r1.ebuild,v 1.1 2005/10/16 23:58:36 vapier Exp $
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="File transfer program to keep remote files into sync"
+HOMEPAGE="http://rsync.samba.org/"
+SRC_URI="http://rsync.samba.org/ftp/rsync/${P/_/}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="build static acl ipv6"
+
+RDEPEND="!build? ( >=dev-libs/popt-1.5 )
+       acl? ( sys-apps/acl )"
+DEPEND="${RDEPEND}
+       >=sys-apps/portage-2.0.51"
+
+S=${WORKDIR}/${P/_/}
+
+src_unpack() {
+       unpack ${P/_/}.tar.gz
+       cd "${S}"
+       if use acl ; then
+               epatch patches/acls.diff "${FILESDIR}"/${P}-acls.patch
+               autoconf || die "autoconf"
+               autoheader || die "autoheader"
+       fi
+}
+
+src_compile() {
+       [[ $(gcc-version) == "2.95" ]] && append-ldflags -lpthread
+       use static && append-ldflags -static
+
+       econf \
+               $(use_with build included-popt) \
+               $(use_with acl acl-support) \
+               $(use_with acl xattr-support) \
+               $(use_enable ipv6) \
+               --with-rsyncd-conf=/etc/rsyncd.conf \
+               || die
+       emake || die "emake failed"
+}
+
+pkg_preinst() {
+       if [[ -e ${ROOT}/etc/rsync/rsyncd.conf ]] && [[ ! -e ${ROOT}/etc/rsyncd.conf ]] ; then
+               mv "${ROOT}"/etc/rsync/rsyncd.conf "${ROOT}"/etc/rsyncd.conf
+               rm -f "${ROOT}"/etc/rsync/.keep
+               rmdir "${ROOT}"/etc/rsync >& /dev/null
+       fi
+}
+
+src_install() {
+       make DESTDIR="${D}" install || die "make install failed"
+       newconfd "${FILESDIR}"/rsyncd.conf.d rsyncd
+       newinitd "${FILESDIR}"/rsyncd.init.d rsyncd
+       if ! use build ; then
+               dodoc NEWS OLDNEWS README TODO tech_report.tex
+               insinto /etc
+               doins "${FILESDIR}"/rsyncd.conf
+       else
+               rm -r "${D}"/usr/share
+       fi
+}
+
+pkg_postinst() {
+       ewarn "The rsyncd.conf file has been moved for you to /etc/rsyncd.conf"
+       echo
+       ewarn "Please make sure you do NOT disable the rsync server running"
+       ewarn "in a chroot.  Please check /etc/rsyncd.conf and make sure"
+       ewarn "it says: use chroot = yes"
+}