summaryrefslogtreecommitdiff
path: root/devel/cvs
diff options
context:
space:
mode:
authorbad <bad@pkgsrc.org>1999-01-18 21:11:47 +0000
committerbad <bad@pkgsrc.org>1999-01-18 21:11:47 +0000
commitea2da4c7c40c53a983afa443b9d214fdd61d313a (patch)
tree3813e8b673f9c2eacf6cb7f1aa8521c0e56f61f5 /devel/cvs
parent8a6988ed4037d7f6f5814ecaafc5fe19bda736bc (diff)
downloadpkgsrc-ea2da4c7c40c53a983afa443b9d214fdd61d313a.tar.gz
Factor in the umask even for files where the server didn't create a
temp file. This prevents the server from telling old clients that the checked-out file should be world writeable because the RCS file is world readable. XXX needs to be adapted when post-1.10 versions of CVS are integrated. Bump PKGNAME to 1.10-nb1 to make it clear which version is installed.
Diffstat (limited to 'devel/cvs')
-rw-r--r--devel/cvs/Makefile5
-rw-r--r--devel/cvs/patches/patch-af24
2 files changed, 27 insertions, 2 deletions
diff --git a/devel/cvs/Makefile b/devel/cvs/Makefile
index dbd35aa91dc..38918718baf 100644
--- a/devel/cvs/Makefile
+++ b/devel/cvs/Makefile
@@ -1,14 +1,15 @@
-# $NetBSD: Makefile,v 1.16 1998/11/30 17:53:30 tv Exp $
+# $NetBSD: Makefile,v 1.17 1999/01/18 21:11:47 bad Exp $
#
DISTNAME= cvs-1.10
+PKGNAME= cvs-1.10-nb1
CATEGORIES= devel
MASTER_SITES= ftp://download.cyclic.com/pub/${DISTNAME}/
MAINTAINER= tv@netbsd.org
HOMEPAGE= http://www.cyclic.com/cvs/info.html
-CONFLICTS= cvs-1.9*
+CONFLICTS= cvs-1.9* cvs-1.10
GNU_CONFIGURE= yes
USE_GTEXINFO= yes
diff --git a/devel/cvs/patches/patch-af b/devel/cvs/patches/patch-af
new file mode 100644
index 00000000000..6df10a7116b
--- /dev/null
+++ b/devel/cvs/patches/patch-af
@@ -0,0 +1,24 @@
+$NetBSD: patch-af,v 1.1 1999/01/18 21:11:48 bad Exp $
+
+--- src/update.c.orig Thu Jun 25 16:56:50 1998
++++ src/update.c Mon Jan 18 20:17:08 1999
+@@ -1304,11 +1304,18 @@
+ xchmod (finfo->file, 1);
+ else
+ {
++ mode_t oumask, writeaccess;
++
+ /* We know that we are the server here, so
+ although xchmod checks umask, we don't bother. */
+- mode |= (((mode & S_IRUSR) ? S_IWUSR : 0)
++ /* Not bothering with the umask makes the files
++ mode 0777 on old clients, though. -chb */
++ oumask = umask(0);
++ (void) umask(oumask);
++ writeaccess = (((mode & S_IRUSR) ? S_IWUSR : 0)
+ | ((mode & S_IRGRP) ? S_IWGRP : 0)
+ | ((mode & S_IROTH) ? S_IWOTH : 0));
++ mode |= (~oumask) & writeaccess;
+ }
+ }
+