Update to 4.4.0
Changelog: Version 4.4.0 (19/06/2016): * Support up to 24 function keys * Fix runtime issues * 'logfile' command, starts logging into new file upon changing
This commit is contained in:
parent
712188c50e
commit
7032402e50
8 changed files with 60 additions and 136 deletions
|
@ -1,7 +1,6 @@
|
|||
# $NetBSD: Makefile,v 1.96 2015/09/11 01:24:06 kim Exp $
|
||||
# $NetBSD: Makefile,v 1.97 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
DISTNAME= screen-4.3.1
|
||||
#PKGREVISION= 0
|
||||
DISTNAME= screen-4.4.0
|
||||
CATEGORIES= misc shells
|
||||
MASTER_SITES= ${MASTER_SITE_GNU:=screen/}
|
||||
|
||||
|
@ -13,7 +12,7 @@ LICENSE= gnu-gpl-v3
|
|||
# In file included from list_display.c:36:
|
||||
# In file included from ./screen.h:150:
|
||||
# ./display.h:154:19: error: use of undeclared identifier 'T_N'
|
||||
MAKE_JOBS_SAFE= no
|
||||
#MAKE_JOBS_SAFE= no
|
||||
|
||||
.include "options.mk"
|
||||
|
||||
|
|
|
@ -1,20 +1,19 @@
|
|||
$NetBSD: distinfo,v 1.40 2016/05/02 19:10:40 jperkin Exp $
|
||||
$NetBSD: distinfo,v 1.41 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
SHA1 (screen-4.3.1.tar.gz) = a524761504e28480517e338b20c852f2ab100c93
|
||||
RMD160 (screen-4.3.1.tar.gz) = 9de183f86e36b211d56c35e58598728f332faec9
|
||||
SHA512 (screen-4.3.1.tar.gz) = 8e8a25b23330a7d8e00fc9e6cc430f0eb3937ccf4183efbd6fd24e4dc04cc09b3acae45bfc24892faee433b18fa79b1cfe0211fd75c0d74ecf908f916bf774aa
|
||||
Size (screen-4.3.1.tar.gz) = 845958 bytes
|
||||
SHA1 (screen-4.4.0.tar.gz) = f37f99ec57be1063c471c86511eab20a3afd39ff
|
||||
RMD160 (screen-4.4.0.tar.gz) = b6904ed07e4cabd3fc8c5c267891e4015b471682
|
||||
SHA512 (screen-4.4.0.tar.gz) = 6e43f85c419f778822ec85e4340c95769e981a3d51abdeb5f26c6ebb840da9ab11b351ecc7f380ceea39bcfaa87f1124cfebd6af4ecb62b886eb189e7b79981b
|
||||
Size (screen-4.4.0.tar.gz) = 846010 bytes
|
||||
SHA1 (patch-aa) = 39c6fa5bda62b2891cecf4a5e9598b179ea8b4dc
|
||||
SHA1 (patch-ab) = 40911979a540645db2a17861328292add22898d3
|
||||
SHA1 (patch-ae) = 8792f7877c0a29701d7d0643e93360813ed7db0f
|
||||
SHA1 (patch-ai) = db9f23d31763e44d788af3a44e4ae91b84c87deb
|
||||
SHA1 (patch-ai) = d93147f4e8a2026a1892c3cbd14a929d81e0e635
|
||||
SHA1 (patch-aj) = e9996135629085c44867b9264648b2b507e91f98
|
||||
SHA1 (patch-ak) = 31982e692cabf25be31bd1758fe1aeb1a4787629
|
||||
SHA1 (patch-al) = 1e5a5be52b9f323f10841df74e25a3d2ba6996ea
|
||||
SHA1 (patch-al) = caabc33ee51922d97edac19346ad9d80fabb164b
|
||||
SHA1 (patch-am) = a721e311e7dde7938de0e9546a7892bfd104ebd1
|
||||
SHA1 (patch-an) = bda6c65148410a6c9a13afd8ad34f93e33731552
|
||||
SHA1 (patch-ansi.c) = 4dc3d46b99f99257e341099781a3eda680c6d1c3
|
||||
SHA1 (patch-ao) = 56fc8cb9939149a49f920a0ae3f9a61701808c82
|
||||
SHA1 (patch-ap) = 821f11201b640464b3590c2571da96b250a397ac
|
||||
SHA1 (patch-ao) = 91eecb62351aff720447eb48ea85aae70b62f9b6
|
||||
SHA1 (patch-ap) = 4176e95502754206d6840ce228c61371df947650
|
||||
SHA1 (patch-socket.c) = 09683cee3685a5c6d625e86aa97f6a09f4280b56
|
||||
SHA1 (patch-tty.sh) = 9acdedeb1e2bf3919e29cb353c4e714cb61d8386
|
||||
SHA1 (patch-tty.sh) = 93b1fe856cf16640295cb822d60118dbd3734602
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
$NetBSD: patch-ai,v 1.6 2015/09/01 13:34:47 kim Exp $
|
||||
$NetBSD: patch-ai,v 1.7 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
This glues in the code from patch-am (see also path-al and patch-an).
|
||||
|
||||
--- os.h.orig 2015-06-28 21:22:56.000000000 +0000
|
||||
+++ os.h 2015-09-01 12:37:29.000000000 +0000
|
||||
--- os.h.orig 2016-06-19 19:41:03.000000000 +0000
|
||||
+++ os.h
|
||||
@@ -71,9 +71,6 @@
|
||||
# undef exit
|
||||
#endif /* sun */
|
||||
|
@ -14,23 +14,30 @@ This glues in the code from patch-am (see also path-al and patch-an).
|
|||
#ifndef HAVE_STRERROR
|
||||
/* No macros, please */
|
||||
#undef strerror
|
||||
@@ -250,10 +247,17 @@
|
||||
@@ -250,9 +247,15 @@ extern int errno;
|
||||
#endif
|
||||
|
||||
#if defined(UTMPOK) || defined(BUGGYGETLOGIN)
|
||||
-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux)
|
||||
+# if (defined(SVR4) && !defined(DGUX) && !defined(__hpux)) \
|
||||
-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux)
|
||||
+# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux) \
|
||||
+ || (defined(__NetBSD_Version__) && (__NetBSD_Version__ >= 106050000)) \
|
||||
+ || (defined(__DragonFly__) && (__DragonFly_version >= 200902))
|
||||
# include <utmpx.h>
|
||||
-# ifdef UTMPX_FILE /* GNU extension */
|
||||
+# if defined(UTMPX_FILE) /* GNU extension */
|
||||
# define UTMPFILE UTMPX_FILE
|
||||
+# elif defined(_PATH_UTMPX)
|
||||
+# define UTMPFILE _PATH_UTMPX
|
||||
+# endif
|
||||
+# if defined(__NetBSD__)
|
||||
+# define NetBSD_UTMP
|
||||
# endif
|
||||
+#if defined(UTMPX_FILE) /* GNU extension */
|
||||
# define UTMPFILE UTMPX_FILE
|
||||
+#elif defined(_PATH_UTMPX)
|
||||
+# define UTMPFILE _PATH_UTMPX
|
||||
+#endif
|
||||
# define utmp utmpx
|
||||
# define getutent getutxent
|
||||
# define getutid getutxid
|
||||
@@ -261,6 +264,9 @@ extern int errno;
|
||||
# define setutent setutxent
|
||||
# define endutent endutxent
|
||||
# define ut_time ut_xtime
|
||||
+# if defined(__NetBSD__)
|
||||
+# define NetBSD_UTMP
|
||||
+# endif
|
||||
# else /* SVR4 */
|
||||
# include <utmp.h>
|
||||
# endif /* SVR4 */
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
$NetBSD: patch-al,v 1.5 2016/05/02 19:10:40 jperkin Exp $
|
||||
$NetBSD: patch-al,v 1.6 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
Make extra calls to remove utmp entries when utmpx is used.
|
||||
For non-login entries we only update utmpx, as it stores
|
||||
more information, and utilities are reading both.
|
||||
|
||||
--- utmp.c.orig 2015-06-28 21:37:40.000000000 +0000
|
||||
--- utmp.c.orig 2016-06-19 19:41:03.000000000 +0000
|
||||
+++ utmp.c
|
||||
@@ -48,6 +48,12 @@ extern char *LoginName;
|
||||
extern int real_uid, eff_uid;
|
||||
|
@ -39,27 +39,3 @@ more information, and utilities are reading both.
|
|||
if (utmpok && D_loginslot != (slot_t)0 && D_loginslot != (slot_t)-1)
|
||||
{
|
||||
debug1(" logging you in again (slot %#x)\n", (int)D_loginslot);
|
||||
@@ -631,7 +643,11 @@ int pid;
|
||||
/* must use temp variable because of NetBSD/sparc64, where
|
||||
* ut_xtime is long(64) but time_t is int(32) */
|
||||
(void)time(&now);
|
||||
+#ifdef __APPLE__
|
||||
+ u->ut_time = now;
|
||||
+#else
|
||||
u->ut_tv.tv_sec = now;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static slot_t
|
||||
@@ -743,7 +759,11 @@ int pid;
|
||||
strncpy(u->ut_line, line, sizeof(u->ut_line));
|
||||
strncpy(u->ut_name, user, sizeof(u->ut_name));
|
||||
(void)time(&now);
|
||||
+#ifdef __APPLE__
|
||||
+ u->ut_time = now;
|
||||
+#else
|
||||
u->ut_tv.tv_sec = now;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static slot_t
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
$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 */
|
|
@ -1,4 +1,4 @@
|
|||
$NetBSD: patch-ao,v 1.5 2015/09/01 13:34:47 kim Exp $
|
||||
$NetBSD: patch-ao,v 1.6 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
Replace configurable paths with tags.
|
||||
|
||||
|
@ -9,13 +9,13 @@ YOU MUST RUN DIFF BEFORE SUBSTITUTIONS!
|
|||
|
||||
RUNNING "make patch" TAKES YOU TOO FAR.
|
||||
|
||||
--- etc/etcscreenrc.orig Sun Apr 29 01:25:34 2001
|
||||
--- etc/etcscreenrc.orig 2015-09-05 19:28:22.000000000 +0000
|
||||
+++ etc/etcscreenrc
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# This is an example for the global screenrc file.
|
||||
-# You may want to install this file as /usr/local/etc/screenrc.
|
||||
+# You may want to install this file as @PKG_SYSCONFDIR@/screenrc.
|
||||
+# You may want to install this file as /usr/pkg/etc/screenrc.
|
||||
# Check config.h for the exact location.
|
||||
#
|
||||
# Flaws of termcap and standard settings are done here.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
$NetBSD: patch-ap,v 1.6 2015/09/01 13:34:47 kim Exp $
|
||||
$NetBSD: patch-ap,v 1.7 2016/06/20 16:04:44 ryoon Exp $
|
||||
|
||||
Replace configurable paths with tags.
|
||||
|
||||
|
@ -9,9 +9,9 @@ YOU MUST RUN DIFF BEFORE SUBSTITUTIONS!
|
|||
|
||||
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 @@
|
||||
--- doc/screen.1.orig 2016-06-19 19:41:03.000000000 +0000
|
||||
+++ doc/screen.1
|
||||
@@ -636,7 +636,7 @@ Show a listing of all currently attached
|
||||
|
||||
.SH CUSTOMIZATION
|
||||
The \*Qsocket directory\*U defaults either to $HOME/.screen or simply to
|
||||
|
@ -20,36 +20,36 @@ RUNNING "make patch" TAKES YOU TOO FAR.
|
|||
.I screen
|
||||
is installed setuid-root, then the administrator
|
||||
should compile
|
||||
@@ -649,7 +649,7 @@
|
||||
@@ -649,7 +649,7 @@ in the environment variable $SCREENDIR.
|
||||
When
|
||||
.I screen
|
||||
is invoked, it executes initialization commands from the files
|
||||
-\*Q/usr/local/etc/screenrc\*U and
|
||||
+\*Q@PKG_SYSCONFDIR@/screenrc\*U and
|
||||
+\*Q/usr/pkg/etc/screenrc\*U and
|
||||
\*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
|
||||
@@ -679,7 +679,7 @@
|
||||
@@ -679,7 +679,7 @@ variable substitution shall be performed
|
||||
protected from variable substitution.
|
||||
.PP
|
||||
Two configuration files are shipped as examples with your screen distribution:
|
||||
-\*Qetc/screenrc\*U and \*Qetc/etcscreenrc\*U. They contain a number of
|
||||
+\*Q@EXAMPLES@/screenrc\*U and \*Q@EXAMPLES@/etcscreenrc\*U. They contain a number of
|
||||
+\*Q/usr/pkg/share/examples/screen/screenrc\*U and \*Q/usr/pkg/share/examples/screen/etcscreenrc\*U. They contain a number of
|
||||
useful examples for various commands.
|
||||
.PP
|
||||
Customization can also be done 'on-line'. To enter the command mode type
|
||||
@@ -4903,14 +4903,14 @@
|
||||
@@ -4903,14 +4903,14 @@ Examples in the
|
||||
.I screen
|
||||
distribution package for private and global initialization files.
|
||||
.IP $SYSSCREENRC
|
||||
-.IP /usr/local/etc/screenrc
|
||||
+.IP @PKG_SYSCONFDIR@/screenrc
|
||||
+.IP /usr/pkg/etc/screenrc
|
||||
.I screen
|
||||
initialization commands
|
||||
.IP $SCREENRC
|
||||
.IP $HOME/.screenrc
|
||||
-Read in after /usr/local/etc/screenrc
|
||||
+Read in after @PKG_SYSCONFDIR@/screenrc
|
||||
+Read in after /usr/pkg/etc/screenrc
|
||||
.IP $SCREENDIR/S\-<login>
|
||||
-.IP /local/screens/S\-<login>
|
||||
+.IP /tmp/screens/S\-<login>
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
$NetBSD: patch-tty.sh,v 1.2 2015/09/01 13:34:47 kim Exp $
|
||||
$NetBSD: patch-tty.sh,v 1.3 2016/06/20 16:04:44 ryoon 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 2015-06-28 21:22:56.000000000 +0000
|
||||
+++ tty.sh 2015-09-01 12:46:28.000000000 +0000
|
||||
@@ -812,7 +812,8 @@
|
||||
--- tty.sh.orig 2016-06-19 19:41:03.000000000 +0000
|
||||
+++ tty.sh
|
||||
@@ -813,7 +813,8 @@ int fd;
|
||||
/*
|
||||
* Under BSD we have to set the controlling terminal again explicitly.
|
||||
*/
|
||||
|
@ -17,15 +17,15 @@ to the realpath() function. Make it so.
|
|||
ioctl(fd, TIOCSCTTY, (char *)0);
|
||||
# endif
|
||||
|
||||
@@ -1508,8 +1509,10 @@
|
||||
struct stat st;
|
||||
char * real;
|
||||
@@ -1510,8 +1511,10 @@ char *tty;
|
||||
char realbuf[PATH_MAX];
|
||||
const char *real;
|
||||
int rc;
|
||||
+ char *ttynamebuf;
|
||||
|
||||
- real = realpath(tty, NULL);
|
||||
- real = realpath(tty, realbuf);
|
||||
+ ttynamebuf = malloc(MAXPATHLEN);
|
||||
+ real = realpath(tty, ttynamebuf);
|
||||
if (!real)
|
||||
return -1;
|
||||
|
||||
realbuf[sizeof(realbuf)-1]='\0';
|
||||
|
|
Loading…
Reference in a new issue