summaryrefslogtreecommitdiff
path: root/sysutils/cfengine
diff options
context:
space:
mode:
authorabs <abs@pkgsrc.org>1999-11-09 16:14:58 +0000
committerabs <abs@pkgsrc.org>1999-11-09 16:14:58 +0000
commit27fd117acc921971cd2e0656c7332b24b3244fef (patch)
tree9189ee837aaf89cb2bb55ec5934ae685293a1065 /sysutils/cfengine
parent0bc3902d4bfa2f00594bd0124cc27b3e99b49523 (diff)
downloadpkgsrc-27fd117acc921971cd2e0656c7332b24b3244fef.tar.gz
Fix bug which would cause source linked files to sometimes copied
separately. Just for posterity, here is how to replicate the problem: (All this is going back to the maintainers) #!/bin/sh # Generates a 'from' directory, then runs cfengine to copy it into 'to'. # The order of file creation in the from directory is significant - # the 'bad' file must be picked up _after_ the 'subdir'. # Obvious caveats about IRIX XFS notwithstanding. TESTDIR=/tmp/cfenginetest rm -rf $TESTDIR mkdir -p $TESTDIR cd $TESTDIR # Generate cfengine.conf cat > cfengine.conf <<END control: actionsequence = ( copy ) copy: $TESTDIR/from dest=$TESTDIR/to recurse=inf END # Generate 'from' directory mkdir from cd from touch ok mkdir subdir touch bad cd subdir ln ../ok ln ../bad cd ../.. cfengine -v echo echo "Both 'ok' and 'bad' should have the same number of links (2) in both" echo "'from' and 'to' directories. 'bad' will have 1 if bug is present." echo ls -l from to
Diffstat (limited to 'sysutils/cfengine')
-rw-r--r--sysutils/cfengine/Makefile4
-rw-r--r--sysutils/cfengine/files/patch-sum3
-rw-r--r--sysutils/cfengine/patches/patch-ae19
3 files changed, 23 insertions, 3 deletions
diff --git a/sysutils/cfengine/Makefile b/sysutils/cfengine/Makefile
index 77a594811de..e9714ded78a 100644
--- a/sysutils/cfengine/Makefile
+++ b/sysutils/cfengine/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.3 1999/11/05 14:17:13 abs Exp $
+# $NetBSD: Makefile,v 1.4 1999/11/09 16:14:58 abs Exp $
#
DISTNAME= cfengine-1.5.3
-PKGNAME= cfengine-1.5.3p1
+PKGNAME= cfengine-1.5.3abs2
CATEGORIES= sysutils net
MASTER_SITES= ftp://ftp.iu.hioslo.no/pub/cfengine/ \
ftp://ftp.cfengine.webmotion.net/pub/cfengine/
diff --git a/sysutils/cfengine/files/patch-sum b/sysutils/cfengine/files/patch-sum
index 4d0e39c76ce..b2d1d178fdc 100644
--- a/sysutils/cfengine/files/patch-sum
+++ b/sysutils/cfengine/files/patch-sum
@@ -1,6 +1,7 @@
-$NetBSD: patch-sum,v 1.3 1999/11/05 14:17:15 abs Exp $
+$NetBSD: patch-sum,v 1.4 1999/11/09 16:14:59 abs Exp $
MD5 (patch-aa) = ebd4b9f4a796be4616eb8e7dfcd94ff1
MD5 (patch-ab) = ce6f24895e645758ebd608a361b55cd5
MD5 (patch-ac) = 8e21f9df160a1c36d7e8da66445bd792
MD5 (patch-ad) = 92441253e24f78b9658c6a3a975cf245
+MD5 (patch-ae) = a0809132cb27e911e5712252068d3e4c
diff --git a/sysutils/cfengine/patches/patch-ae b/sysutils/cfengine/patches/patch-ae
new file mode 100644
index 00000000000..b9c36a08830
--- /dev/null
+++ b/sysutils/cfengine/patches/patch-ae
@@ -0,0 +1,19 @@
+$NetBSD: patch-ae,v 1.1 1999/11/09 16:14:59 abs Exp $
+--- src/image.c.orig Tue Sep 14 09:28:09 1999
++++ src/image.c Tue Nov 9 15:37:00 1999
+@@ -193,9 +193,12 @@
+ DeleteItemList(namecache);
+ }
+
+-DeleteCompressedArray(ip->inode_cache);
+-
+-ip->inode_cache = NULL;
++ /* Only flush when exiting initial call to RecursiveImage() */
++if (strcmp(from,ip->path) == 0)
++ {
++ DeleteCompressedArray(ip->inode_cache);
++ ip->inode_cache = NULL;
++ }
+
+ cfclosedir(dirh);
+ }