diff options
-rw-r--r-- | misc/screen/Makefile | 12 | ||||
-rw-r--r-- | misc/screen/distinfo | 25 | ||||
-rw-r--r-- | misc/screen/patches/patch-ai | 27 | ||||
-rw-r--r-- | misc/screen/patches/patch-aj | 10 | ||||
-rw-r--r-- | misc/screen/patches/patch-ak | 12 | ||||
-rw-r--r-- | misc/screen/patches/patch-an | 4 | ||||
-rw-r--r-- | misc/screen/patches/patch-ansi.c | 57 | ||||
-rw-r--r-- | misc/screen/patches/patch-ao | 9 | ||||
-rw-r--r-- | misc/screen/patches/patch-ap | 21 | ||||
-rw-r--r-- | misc/screen/patches/patch-socket.c | 21 | ||||
-rw-r--r-- | misc/screen/patches/patch-tty.sh | 16 |
11 files changed, 145 insertions, 69 deletions
diff --git a/misc/screen/Makefile b/misc/screen/Makefile index 7409d89cb60..fb5dbade83f 100644 --- a/misc/screen/Makefile +++ b/misc/screen/Makefile @@ -1,14 +1,14 @@ -# $NetBSD: Makefile,v 1.94 2015/08/18 07:31:13 wiz Exp $ +# $NetBSD: Makefile,v 1.95 2015/09/01 13:34:47 kim Exp $ -DISTNAME= screen-4.2.1 -PKGREVISION= 2 +DISTNAME= screen-4.3.1 +#PKGREVISION= 0 CATEGORIES= misc shells MASTER_SITES= ${MASTER_SITE_GNU:=screen/} -MAINTAINER= kim@tac.nyc.ny.us +MAINTAINER= kimmo@suominen.com HOMEPAGE= http://www.gnu.org/software/screen/screen.html COMMENT= Multi-screen window manager -LICENSE= gnu-gpl-v2 +LICENSE= gnu-gpl-v3 # In file included from list_display.c:36: # In file included from ./screen.h:150: @@ -26,6 +26,8 @@ CONFIGURE_ARGS+= --with-sys-screenrc=${PKG_SYSCONFDIR}/screenrc CONFIGURE_ARGS+= --enable-telnet PKG_SHELL= bin/screen + +USE_TOOLS+= makeinfo INFO_FILES= YES .include "../../mk/bsd.prefs.mk" diff --git a/misc/screen/distinfo b/misc/screen/distinfo index 2dea6380d95..b08d3cb06fa 100644 --- a/misc/screen/distinfo +++ b/misc/screen/distinfo @@ -1,18 +1,19 @@ -$NetBSD: distinfo,v 1.37 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: distinfo,v 1.38 2015/09/01 13:34:47 kim Exp $ -SHA1 (screen-4.2.1.tar.gz) = 21eadf5f1d64120649f3390346253c6bc8a5103c -RMD160 (screen-4.2.1.tar.gz) = 20ddf4a33f91e60a42a31f02aa2a30a9c5cba9b5 -Size (screen-4.2.1.tar.gz) = 1062485 bytes +SHA1 (screen-4.3.1.tar.gz) = a524761504e28480517e338b20c852f2ab100c93 +RMD160 (screen-4.3.1.tar.gz) = 9de183f86e36b211d56c35e58598728f332faec9 +Size (screen-4.3.1.tar.gz) = 845958 bytes SHA1 (patch-aa) = 39c6fa5bda62b2891cecf4a5e9598b179ea8b4dc SHA1 (patch-ab) = 40911979a540645db2a17861328292add22898d3 SHA1 (patch-ae) = 8792f7877c0a29701d7d0643e93360813ed7db0f -SHA1 (patch-ai) = a6aafe822d7222398494e5733106b3d78c5836fc -SHA1 (patch-aj) = 00cf67ceedb8ab48a554c9b5ce855ae5d7fd7474 -SHA1 (patch-ak) = 8e54df7a6bd648e60f2b6cfd6f01ed34040f1932 +SHA1 (patch-ai) = db9f23d31763e44d788af3a44e4ae91b84c87deb +SHA1 (patch-aj) = e9996135629085c44867b9264648b2b507e91f98 +SHA1 (patch-ak) = 31982e692cabf25be31bd1758fe1aeb1a4787629 SHA1 (patch-al) = f49e179dd814c826e283949c40497067e56398c4 SHA1 (patch-am) = a721e311e7dde7938de0e9546a7892bfd104ebd1 -SHA1 (patch-an) = 98cbcbff81af04a171348e851a393b74d9be5e19 -SHA1 (patch-ao) = d234091ca54162b47017bf690af5fb86a8d6ba08 -SHA1 (patch-ap) = 80ea5287e4e74962c37b0b9bc6983179eed705ac -SHA1 (patch-socket.c) = b82504e75afa7a18f3335692848794a65f3b242f -SHA1 (patch-tty.sh) = f93a3e2063df25c2610c6e84a623f3dc2046761b +SHA1 (patch-an) = bda6c65148410a6c9a13afd8ad34f93e33731552 +SHA1 (patch-ansi.c) = 4dc3d46b99f99257e341099781a3eda680c6d1c3 +SHA1 (patch-ao) = 56fc8cb9939149a49f920a0ae3f9a61701808c82 +SHA1 (patch-ap) = 821f11201b640464b3590c2571da96b250a397ac +SHA1 (patch-socket.c) = 09683cee3685a5c6d625e86aa97f6a09f4280b56 +SHA1 (patch-tty.sh) = 9acdedeb1e2bf3919e29cb353c4e714cb61d8386 diff --git a/misc/screen/patches/patch-ai b/misc/screen/patches/patch-ai index 34bb7d5f56f..f81804b7caf 100644 --- a/misc/screen/patches/patch-ai +++ b/misc/screen/patches/patch-ai @@ -1,9 +1,9 @@ -$NetBSD: patch-ai,v 1.5 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: patch-ai,v 1.6 2015/09/01 13:34:47 kim Exp $ This glues in the code from patch-am (see also path-al and patch-an). ---- os.h.orig 2014-04-26 10:58:35.000000000 +0000 -+++ os.h +--- os.h.orig 2015-06-28 21:22:56.000000000 +0000 ++++ os.h 2015-09-01 12:37:29.000000000 +0000 @@ -71,9 +71,6 @@ # undef exit #endif /* sun */ @@ -14,24 +14,23 @@ This glues in the code from patch-am (see also path-al and patch-an). #ifndef HAVE_STRERROR /* No macros, please */ #undef strerror -@@ -250,9 +247,18 @@ extern int errno; +@@ -250,10 +247,17 @@ #endif #if defined(UTMPOK) || defined(BUGGYGETLOGIN) --# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux) -+# if (defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux)) \ +-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) ++# if (defined(SVR4) && !defined(DGUX) && !defined(__hpux)) \ + || (defined(__NetBSD_Version__) && (__NetBSD_Version__ >= 106050000)) \ + || (defined(__DragonFly__) && (__DragonFly_version >= 200902)) # include <utmpx.h> --# define UTMPFILE UTMPX_FILE -+# if defined(__NetBSD__) +-# ifdef UTMPX_FILE /* GNU extension */ ++# if defined(UTMPX_FILE) /* GNU extension */ + # define UTMPFILE UTMPX_FILE ++# elif defined(_PATH_UTMPX) +# define UTMPFILE _PATH_UTMPX -+# define NetBSD_UTMP -+# elif defined(__DragonFly__) -+# define UTMPFILE _PATH_UTMPX -+# else -+# define UTMPFILE UTMPX_FILE +# endif ++# if defined(__NetBSD__) ++# define NetBSD_UTMP + # endif # define utmp utmpx # define getutent getutxent - # define getutid getutxid diff --git a/misc/screen/patches/patch-aj b/misc/screen/patches/patch-aj index 6f015c2b510..728d1b7610f 100644 --- a/misc/screen/patches/patch-aj +++ b/misc/screen/patches/patch-aj @@ -1,13 +1,13 @@ -$NetBSD: patch-aj,v 1.8 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: patch-aj,v 1.9 2015/09/01 13:34:47 kim Exp $ Include curses header when testing tgetent in order to prevent crash on 64-bit architectures. Detect getutent correctly on NetBSD with utmpx. ---- configure.in.orig 2014-04-26 10:58:35.000000000 +0000 -+++ configure.in -@@ -686,6 +686,8 @@ AC_TRY_LINK(,tgetent((char *)0, (char *) +--- configure.ac.orig 2015-06-28 21:22:55.000000000 +0000 ++++ configure.ac 2015-09-01 12:49:26.000000000 +0000 +@@ -687,6 +687,8 @@ AC_MSG_ERROR(!!! no tgetent - no screen))))))))) AC_TRY_RUN([ @@ -16,7 +16,7 @@ Detect getutent correctly on NetBSD with utmpx. main() { exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1); -@@ -837,9 +839,16 @@ AC_CHECKING(getutent) +@@ -838,9 +840,16 @@ AC_TRY_LINK([ #include <time.h> /* to get time_t on SCO */ #include <sys/types.h> diff --git a/misc/screen/patches/patch-ak b/misc/screen/patches/patch-ak index 311fbdbce79..8a71b401165 100644 --- a/misc/screen/patches/patch-ak +++ b/misc/screen/patches/patch-ak @@ -1,15 +1,15 @@ -$NetBSD: patch-ak,v 1.7 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: patch-ak,v 1.8 2015/09/01 13:34:47 kim Exp $ -Patch configure after configure.in (see patch-aj). +Patch configure after configure.ac (see patch-aj). Include curses header when testing tgetent in order to prevent crash on 64-bit architectures. Detect getutent correctly on NetBSD with utmpx. ---- configure.orig 2014-04-26 10:58:46.000000000 +0000 -+++ configure -@@ -5017,6 +5017,8 @@ else +--- configure.orig 2015-06-28 21:42:40.000000000 +0000 ++++ configure 2015-09-01 13:12:22.000000000 +0000 +@@ -5018,6 +5018,8 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -18,7 +18,7 @@ Detect getutent correctly on NetBSD with utmpx. main() { exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1); -@@ -5413,9 +5415,16 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ +@@ -5414,9 +5416,16 @@ #include <time.h> /* to get time_t on SCO */ #include <sys/types.h> diff --git a/misc/screen/patches/patch-an b/misc/screen/patches/patch-an index aa120587850..648cc447528 100644 --- a/misc/screen/patches/patch-an +++ b/misc/screen/patches/patch-an @@ -1,8 +1,8 @@ -$NetBSD: patch-an,v 1.5 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: patch-an,v 1.6 2015/09/01 13:34:47 kim Exp $ Remove GNU Make conditional. @ETCSCREENRC@ appears to get replaced always. If it doesn't in some cases, please fix -configure.in instead (and regen patch for configure as well). +configure.ac instead (and regen patch for configure as well). Add utmp-netbsd.c (created in patch-am) and utmp-netbsd.o. Setting the setuid bit is handled by the package Makefile. diff --git a/misc/screen/patches/patch-ansi.c b/misc/screen/patches/patch-ansi.c new file mode 100644 index 00000000000..44ca07729b6 --- /dev/null +++ b/misc/screen/patches/patch-ansi.c @@ -0,0 +1,57 @@ +$NetBSD: patch-ansi.c,v 1.1 2015/09/01 13:34:47 kim Exp $ + +Fix for bug 45713, adapted from this master branch commit: +http://git.savannah.gnu.org/cgit/screen.git/patch/?id=c336a32a1dcd445e6b83827f83531d4c6414e2cd + +From c336a32a1dcd445e6b83827f83531d4c6414e2cd Mon Sep 17 00:00:00 2001 +From: Kuang-che Wu <kcwu@csie.org> +Date: Mon, 31 Aug 2015 17:49:57 +0000 +Subject: Fix stack overflow due to too deep recursion + +Bug: 45713 + +How to reproduce: +Run this command inside screen +$ printf '\x1b[10000000T' + +screen will recursively call MScrollV to depth n/256. +This is time consuming and will overflow stack if n is huge. + +--- ansi.c.orig 2015-06-28 21:22:55.000000000 +0000 ++++ ansi.c 2015-09-01 13:02:33.000000000 +0000 +@@ -2502,13 +2502,13 @@ + return; + if (n > 0) + { ++ if (ye - ys + 1 < n) ++ n = ye - ys + 1; + if (n > 256) + { + MScrollV(p, n - 256, ys, ye, bce); + n = 256; + } +- if (ye - ys + 1 < n) +- n = ye - ys + 1; + #ifdef COPY_PASTE + if (compacthist) + { +@@ -2562,14 +2562,14 @@ + } + else + { +- if (n < -256) +- { +- MScrollV(p, n + 256, ys, ye, bce); +- n = -256; +- } + n = -n; + if (ye - ys + 1 < n) + n = ye - ys + 1; ++ if (n > 256) ++ { ++ MScrollV(p, - (n - 256), ys, ye, bce); ++ n = 256; ++ } + + ml = p->w_mlines + ye; + /* Clear lines */ diff --git a/misc/screen/patches/patch-ao b/misc/screen/patches/patch-ao index 15b7d3be71e..b8ae9f9c852 100644 --- a/misc/screen/patches/patch-ao +++ b/misc/screen/patches/patch-ao @@ -1,7 +1,14 @@ -$NetBSD: patch-ao,v 1.4 2015/09/01 12:16:31 kim Exp $ +$NetBSD: patch-ao,v 1.5 2015/09/01 13:34:47 kim Exp $ Replace configurable paths with tags. +BE CAREFUL IF YOU WANT TO REGENERATE THIS PATCH! +YOU MUST RUN DIFF BEFORE SUBSTITUTIONS! + +% make clean && make extract && make pre-patch && make do-patch + +RUNNING "make patch" TAKES YOU TOO FAR. + --- etc/etcscreenrc.orig Sun Apr 29 01:25:34 2001 +++ etc/etcscreenrc @@ -1,6 +1,6 @@ diff --git a/misc/screen/patches/patch-ap b/misc/screen/patches/patch-ap index 93d7fe17b60..9ac89721254 100644 --- a/misc/screen/patches/patch-ap +++ b/misc/screen/patches/patch-ap @@ -1,10 +1,17 @@ -$NetBSD: patch-ap,v 1.5 2015/09/01 12:18:55 kim Exp $ +$NetBSD: patch-ap,v 1.6 2015/09/01 13:34:47 kim Exp $ Replace configurable paths with tags. ---- doc/screen.1.orig 2014-04-27 22:10:01.000000000 +0000 -+++ doc/screen.1 2014-08-25 18:42:29.000000000 +0000 -@@ -625,7 +625,7 @@ +BE CAREFUL IF YOU WANT TO REGENERATE THIS PATCH! +YOU MUST RUN DIFF BEFORE SUBSTITUTIONS! + +% make clean && make extract && make pre-patch && make do-patch + +RUNNING "make patch" TAKES YOU TOO FAR. + +--- doc/screen.1.orig 2015-06-28 21:39:33.000000000 +0000 ++++ doc/screen.1 2015-09-01 13:12:22.000000000 +0000 +@@ -636,7 +636,7 @@ .SH CUSTOMIZATION The \*Qsocket directory\*U defaults either to $HOME/.screen or simply to @@ -13,7 +20,7 @@ Replace configurable paths with tags. .I screen is installed setuid-root, then the administrator should compile -@@ -638,7 +638,7 @@ +@@ -649,7 +649,7 @@ When .I screen is invoked, it executes initialization commands from the files @@ -22,7 +29,7 @@ Replace configurable paths with tags. \*Q.screenrc\*U in the user's home directory. These are the \*Qprogrammer's defaults\*U that can be overridden in the following ways: for the global screenrc file -@@ -668,7 +668,7 @@ +@@ -679,7 +679,7 @@ protected from variable substitution. .PP Two configuration files are shipped as examples with your screen distribution: @@ -31,7 +38,7 @@ Replace configurable paths with tags. useful examples for various commands. .PP Customization can also be done 'on-line'. To enter the command mode type -@@ -4857,14 +4857,14 @@ +@@ -4903,14 +4903,14 @@ .I screen distribution package for private and global initialization files. .IP $SYSSCREENRC diff --git a/misc/screen/patches/patch-socket.c b/misc/screen/patches/patch-socket.c index c4d6aefafed..557e82db44a 100644 --- a/misc/screen/patches/patch-socket.c +++ b/misc/screen/patches/patch-socket.c @@ -1,12 +1,15 @@ -$NetBSD: patch-socket.c,v 1.1 2015/02/13 04:44:40 rodent Exp $ +$NetBSD: patch-socket.c,v 1.2 2015/09/01 13:34:47 kim Exp $ ---- socket.c.orig 2014-04-26 16:22:43.000000000 +0000 -+++ socket.c -@@ -30,6 +30,7 @@ - #include <sys/types.h> - #include <sys/stat.h> +--- socket.c.orig 2015-06-28 21:22:56.000000000 +0000 ++++ socket.c 2015-09-01 12:42:34.000000000 +0000 +@@ -32,9 +32,7 @@ #include <fcntl.h> -+#include <sys/uio.h> #if !defined(NAMEDPIPE) - #include <sys/socket.h> - #include <sys/un.h> + # include <sys/socket.h> +-# ifdef _OpenBSD_ +-# include <sys/uio.h> +-# endif ++# include <sys/uio.h> + # include <sys/un.h> + #endif + diff --git a/misc/screen/patches/patch-tty.sh b/misc/screen/patches/patch-tty.sh index 9d9e5511782..8ab049d911a 100644 --- a/misc/screen/patches/patch-tty.sh +++ b/misc/screen/patches/patch-tty.sh @@ -1,23 +1,23 @@ -$NetBSD: patch-tty.sh,v 1.1 2015/01/13 08:27:28 he Exp $ +$NetBSD: patch-tty.sh,v 1.2 2015/09/01 13:34:47 kim Exp $ Change condition for using TIOCSCTTY. NetBSD on the netbsd-5 branch insists on a non-NULL second argument to the realpath() function. Make it so. ---- tty.sh.orig 2014-04-26 16:29:40.000000000 +0000 -+++ tty.sh -@@ -812,7 +812,8 @@ int fd; +--- tty.sh.orig 2015-06-28 21:22:56.000000000 +0000 ++++ tty.sh 2015-09-01 12:46:28.000000000 +0000 +@@ -812,7 +812,8 @@ /* * Under BSD we have to set the controlling terminal again explicitly. */ --# if (defined(__FreeBSD_kernel__) || defined(__GNU__)) && defined(TIOCSCTTY) -+# if (defined(__FreeBSD_kernel__) || defined(__GNU__) || (BSD >= 199103)) \ -+ && defined(TIOCSCTTY) +-# if (defined(__FreeBSD_kernel__) || defined(__DragonFly__) || defined(__GNU__)) && defined(TIOCSCTTY) ++# if (defined(__FreeBSD_kernel__) || defined(__DragonFly__) \ ++ || defined(__GNU__) || (BSD >= 199103)) && defined(TIOCSCTTY) ioctl(fd, TIOCSCTTY, (char *)0); # endif -@@ -1508,8 +1509,10 @@ char *tty; +@@ -1508,8 +1509,10 @@ struct stat st; char * real; int rc; |