summaryrefslogtreecommitdiff
path: root/net/rsync
diff options
context:
space:
mode:
authorPav Lucistnik <pav@FreeBSD.org>2007-04-09 13:55:32 +0000
committerPav Lucistnik <pav@FreeBSD.org>2007-04-09 13:55:32 +0000
commitd5f3f67cf4cfa1eefba2a05aa4bd18a8c717a890 (patch)
treec9047d3e41a9a85570227c05932c2f2dc5193035 /net/rsync
parent- Fix plist due to DOCSDIR/DATADIR change from PORTNAME change. (diff)
- Fix --acls with --delete
Submitted by: Gary <gary@mups.co.uk> Obtained from: http://lists.samba.org/archive/rsync/2006-November/016706.html
Notes
Notes: svn path=/head/; revision=189566
Diffstat (limited to 'net/rsync')
-rw-r--r--net/rsync/Makefile4
-rw-r--r--net/rsync/files/extra-patches-acls.diff26
2 files changed, 27 insertions, 3 deletions
diff --git a/net/rsync/Makefile b/net/rsync/Makefile
index be5a326a3865..8942393cb5b9 100644
--- a/net/rsync/Makefile
+++ b/net/rsync/Makefile
@@ -60,10 +60,8 @@ EXTRA_PATCHES+= ${WRKSRC}/patches/flags.diff
.endif
.if defined(WITH_ACLSP)
-.if ${OSVERSION} >= 500000
-EXTRA_PATCHES+= ${WRKSRC}/patches/acls.diff
+EXTRA_PATCHES+= ${PATCHDIR}/extra-patches-acls.diff ${WRKSRC}/patches/acls.diff
CONFIGURE_ARGS+=--enable-acl-support
-.endif
.if defined(WITH_FLAGSP)
IGNORE= can't be built: Flags and ACLs patches can't be both enabled at the same time. Please rerun 'make config' and disable one of them
diff --git a/net/rsync/files/extra-patches-acls.diff b/net/rsync/files/extra-patches-acls.diff
new file mode 100644
index 000000000000..86c1a7d26731
--- /dev/null
+++ b/net/rsync/files/extra-patches-acls.diff
@@ -0,0 +1,26 @@
+--- strip/patches/acls.diff.orig Tue Nov 7 05:41:54 2006
++++ strip/patches/acls.diff Mon Apr 9 15:50:06 2007
+@@ -1399,7 +1399,7 @@
+ file->mode = tweak_mode(file->mode, chmod_modes);
+
+ +#ifdef SUPPORT_ACLS
+-+ if (preserve_acls) {
+++ if (preserve_acls && f >= 0) {
+ + sx.st.st_mode = file->mode;
+ + sx.acc_acl = sx.def_acl = NULL;
+ + if (get_acl(fname, &sx) < 0)
+@@ -1415,12 +1415,12 @@
+ flist->files[flist->count++] = file;
+ send_file_entry(file, f);
+ +#ifdef SUPPORT_ACLS
+-+ if (preserve_acls)
+++ if (preserve_acls && f >= 0)
+ + send_acl(&sx, f);
+ +#endif
+ + } else {
+ +#ifdef SUPPORT_ACLS
+-+ if (preserve_acls)
+++ if (preserve_acls && f >= 0)
+ + free_acl(&sx);
+ +#endif
+ }