Wed Jan 25 01:17:16 2017 UTC ()
fix previous for unpriv'd installs. from dholland.

bump PKGREVISION.


(maya)
diff -r1.99 -r1.100 pkgsrc/misc/screen/Makefile
diff -r1.44 -r1.45 pkgsrc/misc/screen/distinfo
diff -r1.2 -r1.3 pkgsrc/misc/screen/patches/patch-screen.c

cvs diff -r1.99 -r1.100 pkgsrc/misc/screen/Makefile (expand / switch to unified diff)

--- pkgsrc/misc/screen/Makefile 2017/01/25 00:18:02 1.99
+++ pkgsrc/misc/screen/Makefile 2017/01/25 01:17:16 1.100
@@ -1,17 +1,17 @@ @@ -1,17 +1,17 @@
1# $NetBSD: Makefile,v 1.99 2017/01/25 00:18:02 maya Exp $ 1# $NetBSD: Makefile,v 1.100 2017/01/25 01:17:16 maya Exp $
2 2
3DISTNAME= screen-4.5.0 3DISTNAME= screen-4.5.0
4PKGREVISION= 1 4PKGREVISION= 2
5CATEGORIES= misc shells 5CATEGORIES= misc shells
6MASTER_SITES= ${MASTER_SITE_GNU:=screen/} 6MASTER_SITES= ${MASTER_SITE_GNU:=screen/}
7 7
8MAINTAINER= kimmo@suominen.com 8MAINTAINER= kimmo@suominen.com
9HOMEPAGE= http://www.gnu.org/software/screen/screen.html 9HOMEPAGE= http://www.gnu.org/software/screen/screen.html
10COMMENT= Multi-screen window manager 10COMMENT= Multi-screen window manager
11LICENSE= gnu-gpl-v3 11LICENSE= gnu-gpl-v3
12 12
13# In file included from list_display.c:36: 13# In file included from list_display.c:36:
14# In file included from ./screen.h:150: 14# In file included from ./screen.h:150:
15# ./display.h:154:19: error: use of undeclared identifier 'T_N' 15# ./display.h:154:19: error: use of undeclared identifier 'T_N'
16#MAKE_JOBS_SAFE= no 16#MAKE_JOBS_SAFE= no
17 17

cvs diff -r1.44 -r1.45 pkgsrc/misc/screen/distinfo (expand / switch to unified diff)

--- pkgsrc/misc/screen/distinfo 2017/01/25 00:18:02 1.44
+++ pkgsrc/misc/screen/distinfo 2017/01/25 01:17:16 1.45
@@ -1,20 +1,20 @@ @@ -1,20 +1,20 @@
1$NetBSD: distinfo,v 1.44 2017/01/25 00:18:02 maya Exp $ 1$NetBSD: distinfo,v 1.45 2017/01/25 01:17:16 maya Exp $
2 2
3SHA1 (screen-4.5.0.tar.gz) = b329f538e7265405a5c14e13520e95ced9d2cb17 3SHA1 (screen-4.5.0.tar.gz) = b329f538e7265405a5c14e13520e95ced9d2cb17
4RMD160 (screen-4.5.0.tar.gz) = cb412991fa2e3ffb6e4ec34449176eccb39a24a9 4RMD160 (screen-4.5.0.tar.gz) = cb412991fa2e3ffb6e4ec34449176eccb39a24a9
5SHA512 (screen-4.5.0.tar.gz) = b2705ed9604355d4153d7902f820af6131a1f2387650f5c6efeda7acf543aad48e8603c26d7c6e74213c8eece994d5d9bb0d114bc19c8d8f3d8e99c00ea4a484 5SHA512 (screen-4.5.0.tar.gz) = b2705ed9604355d4153d7902f820af6131a1f2387650f5c6efeda7acf543aad48e8603c26d7c6e74213c8eece994d5d9bb0d114bc19c8d8f3d8e99c00ea4a484
6Size (screen-4.5.0.tar.gz) = 963233 bytes 6Size (screen-4.5.0.tar.gz) = 963233 bytes
7SHA1 (patch-aa) = 39c6fa5bda62b2891cecf4a5e9598b179ea8b4dc 7SHA1 (patch-aa) = 39c6fa5bda62b2891cecf4a5e9598b179ea8b4dc
8SHA1 (patch-ab) = 40911979a540645db2a17861328292add22898d3 8SHA1 (patch-ab) = 40911979a540645db2a17861328292add22898d3
9SHA1 (patch-ae) = 8792f7877c0a29701d7d0643e93360813ed7db0f 9SHA1 (patch-ae) = 8792f7877c0a29701d7d0643e93360813ed7db0f
10SHA1 (patch-ai) = d93147f4e8a2026a1892c3cbd14a929d81e0e635 10SHA1 (patch-ai) = d93147f4e8a2026a1892c3cbd14a929d81e0e635
11SHA1 (patch-aj) = e9996135629085c44867b9264648b2b507e91f98 11SHA1 (patch-aj) = e9996135629085c44867b9264648b2b507e91f98
12SHA1 (patch-ak) = 31982e692cabf25be31bd1758fe1aeb1a4787629 12SHA1 (patch-ak) = 31982e692cabf25be31bd1758fe1aeb1a4787629
13SHA1 (patch-al) = caabc33ee51922d97edac19346ad9d80fabb164b 13SHA1 (patch-al) = caabc33ee51922d97edac19346ad9d80fabb164b
14SHA1 (patch-am) = a721e311e7dde7938de0e9546a7892bfd104ebd1 14SHA1 (patch-am) = a721e311e7dde7938de0e9546a7892bfd104ebd1
15SHA1 (patch-an) = bda6c65148410a6c9a13afd8ad34f93e33731552 15SHA1 (patch-an) = bda6c65148410a6c9a13afd8ad34f93e33731552
16SHA1 (patch-ao) = 91eecb62351aff720447eb48ea85aae70b62f9b6 16SHA1 (patch-ao) = 91eecb62351aff720447eb48ea85aae70b62f9b6
17SHA1 (patch-ap) = 4176e95502754206d6840ce228c61371df947650 17SHA1 (patch-ap) = 4176e95502754206d6840ce228c61371df947650
18SHA1 (patch-screen.c) = 1c6a8af8cbdc66723649a9f6659e963150805b32 18SHA1 (patch-screen.c) = 631d7681ef440cbab6d3795dfbb23c1e944deb7d
19SHA1 (patch-socket.c) = 09683cee3685a5c6d625e86aa97f6a09f4280b56 19SHA1 (patch-socket.c) = 09683cee3685a5c6d625e86aa97f6a09f4280b56
20SHA1 (patch-tty.sh) = 93b1fe856cf16640295cb822d60118dbd3734602 20SHA1 (patch-tty.sh) = 93b1fe856cf16640295cb822d60118dbd3734602

cvs diff -r1.2 -r1.3 pkgsrc/misc/screen/patches/patch-screen.c (expand / switch to unified diff)

--- pkgsrc/misc/screen/patches/patch-screen.c 2017/01/25 00:18:02 1.2
+++ pkgsrc/misc/screen/patches/patch-screen.c 2017/01/25 01:17:16 1.3
@@ -1,32 +1,34 @@ @@ -1,32 +1,34 @@
1$NetBSD: patch-screen.c,v 1.2 2017/01/25 00:18:02 maya Exp $ 1$NetBSD: patch-screen.c,v 1.3 2017/01/25 01:17:16 maya Exp $
2 2
3Use standard headers. 3Use standard headers.
4Don't open user-supplied paths as root. 4Don't open user-supplied paths as root.
5 5
6--- screen.c.orig 2017-01-17 19:28:29.000000000 +0000 6--- screen.c.orig 2017-01-17 19:28:29.000000000 +0000
7+++ screen.c 7+++ screen.c
8@@ -88,6 +88,8 @@ 8@@ -88,6 +88,8 @@
9 # include <langinfo.h> 9 # include <langinfo.h>
10 #endif 10 #endif
11  11
12+#include <limits.h> 12+#include <limits.h>
13+ 13+
14 #include "screen.h" 14 #include "screen.h"
15 #ifdef HAVE_BRAILLE 15 #ifdef HAVE_BRAILLE
16 # include "braille.h" 16 # include "braille.h"
17@@ -674,11 +676,15 @@ int main(int ac, char** av) 17@@ -674,11 +676,17 @@ int main(int ac, char** av)
18 if (strlen(screenlogfile) > PATH_MAX) 18 if (strlen(screenlogfile) > PATH_MAX)
19 Panic(0, "-L: logfile name too long. (max. %d char)", PATH_MAX); 19 Panic(0, "-L: logfile name too long. (max. %d char)", PATH_MAX);
20  20
21+ if (seteuid(getuid()) < 0) 21+ int issetugid = geteuid() == 0;
 22+
 23+ if (issetugid && seteuid(getuid()) < 0)
22+ Panic(0, "setuid 1"); 24+ Panic(0, "setuid 1");
23 FILE *w_check; 25 FILE *w_check;
24 if ((w_check = fopen(screenlogfile, "w")) == NULL) 26 if ((w_check = fopen(screenlogfile, "w")) == NULL)
25 Panic(0, "-L: logfile name access problem"); 27 Panic(0, "-L: logfile name access problem");
26 else 28 else
27 fclose(w_check); 29 fclose(w_check);
28+ if (seteuid(0) < 0) 30+ if (issetugid && seteuid(0) < 0)
29+ Panic(0, "setuid 2"); 31+ Panic(0, "setuid 2");
30 } 32 }
31 nwin_options.Lflag = 1; 33 nwin_options.Lflag = 1;
32 break; 34 break;