diff options
author | bad <bad@pkgsrc.org> | 1999-01-18 21:11:47 +0000 |
---|---|---|
committer | bad <bad@pkgsrc.org> | 1999-01-18 21:11:47 +0000 |
commit | ea2da4c7c40c53a983afa443b9d214fdd61d313a (patch) | |
tree | 3813e8b673f9c2eacf6cb7f1aa8521c0e56f61f5 /devel | |
parent | 8a6988ed4037d7f6f5814ecaafc5fe19bda736bc (diff) | |
download | pkgsrc-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')
-rw-r--r-- | devel/cvs/Makefile | 5 | ||||
-rw-r--r-- | devel/cvs/patches/patch-af | 24 |
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; + } + } + |