From: "Sven Wegener" <swegener@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
Date: Sat, 08 Mar 2025 20:03:02 +0000 (UTC) [thread overview]
Message-ID: <1741464174.2c1e1987432646987c303b165d0213d11d0cc989.swegener@gentoo> (raw)
commit: 2c1e1987432646987c303b165d0213d11d0cc989
Author: Sven Wegener <swegener <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 8 19:48:30 2025 +0000
Commit: Sven Wegener <swegener <AT> gentoo <DOT> org>
CommitDate: Sat Mar 8 20:02:54 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c1e1987
app-misc/screen: drop 4.9.0-r3, 4.9.1
Signed-off-by: Sven Wegener <swegener <AT> gentoo.org>
app-misc/screen/Manifest | 1 -
app-misc/screen/files/screen-4.6.2-utmp-exit.patch | 55 --
.../screen/files/screen-4.9.0-CVE-2023-24626.patch | 33 -
.../screen/files/screen-4.9.0-clang16-chmod.patch | 12 -
...n-4.9.0-configure-implicit-function-decls.patch | 747 ---------------------
app-misc/screen/screen-4.9.0-r3.ebuild | 148 ----
app-misc/screen/screen-4.9.1.ebuild | 145 ----
7 files changed, 1141 deletions(-)
diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest
index 9412dc3ffb01..bb2dea0de8cc 100644
--- a/app-misc/screen/Manifest
+++ b/app-misc/screen/Manifest
@@ -1,2 +1 @@
-DIST screen-4.9.0.tar.gz 798229 BLAKE2B 0f64a14ce9a719bd4a6d045c55069769045a09ee2086c44c2e3d9da6d1e5ada2f094e00e16029767e1155ce35d4f360d0e2879995eefa052f3214ced71b7617c SHA512 18bbb085d77ecd02cbc02fa88a945c39f06e0c6de4eeaa16b278440dac5c9896811abbe0838144e997cd344ae08b9530399fa8fcb31a65fc571ead90e8307f84
DIST screen-4.9.1.tar.gz 1040785 BLAKE2B 27d9c100bc1f747e39e109a4957702388d943c7d3b75b4c59dfc3894456d5249257742106fb24cf6f07a36764db0a1c5f7e0a44123edda1c570d771d7f46c638 SHA512 1f278313528815f4246bb162ced611c5d77321d11055e8d853168dc804c75d5f78568056a23e46db0640e1605e5cad4a5ce05e95e50cf02bb322cb6f57e5a126
diff --git a/app-misc/screen/files/screen-4.6.2-utmp-exit.patch b/app-misc/screen/files/screen-4.6.2-utmp-exit.patch
deleted file mode 100644
index 11adf69a5368..000000000000
--- a/app-misc/screen/files/screen-4.6.2-utmp-exit.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 2f1b9dfe03133c9b77ea450aed088d65128dc547 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= <amade@asmblr.net>
-Date: Tue, 5 Apr 2016 12:47:08 +0200
-Subject: [PATCH] check if we have ut_exit in utmpx struct
-
----
- acconfig.h | 5 +++++
- configure.ac | 4 ++++
- utmp.c | 2 ++
- 3 files changed, 11 insertions(+)
-
-diff --git a/acconfig.h b/acconfig.h
-index 656e117..d173c9c 100644
---- a/acconfig.h
-+++ b/acconfig.h
-@@ -215,6 +215,11 @@
- #undef HAVE_UTEMPTER
-
- /*
-+ * Define if your utmpx has ut_exit struct
-+ */
-+#undef HAVE_UT_EXIT
-+
-+/*
- * If your system has the calls setreuid() and setregid(),
- * define HAVE_SETREUID. Otherwise screen will use a forked process to
- * safely create output files without retaining any special privileges.
-diff --git a/configure.ac b/configure.ac
-index 1a75020..8457619 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -374,6 +374,10 @@ if test "$have_utempter" = yes; then
- AC_DEFINE(HAVE_UTEMPTER)
- LIBS="$LIBS -lutempter"
- fi
-+AC_CHECKING(ut_exit)
-+AC_TRY_COMPILE([
-+#include <utmpx.h>
-+],[struct utmpx u; u.ut_exit.e_exit;], AC_DEFINE(HAVE_UT_EXIT))
-
- dnl
- dnl **** signal handling ****
-diff --git a/utmp.c b/utmp.c
-index da8d7ff..c864d07 100644
---- a/utmp.c
-+++ b/utmp.c
-@@ -381,7 +381,7 @@ static int pututslot(slot_t slot, struct utmpx *u, char *host, Window *win)
- struct utmp *u;
- {
- u->ut_type = DEAD_PROCESS;
--#if (!defined(linux) || defined(EMPTY)) && !defined(__CYGWIN__)
-+#if defined(HAVE_UT_EXIT)
- u->ut_exit.e_termination = 0;
- u->ut_exit.e_exit = 0;
- #endif
diff --git a/app-misc/screen/files/screen-4.9.0-CVE-2023-24626.patch b/app-misc/screen/files/screen-4.9.0-CVE-2023-24626.patch
deleted file mode 100644
index 07dec8ecdd28..000000000000
--- a/app-misc/screen/files/screen-4.9.0-CVE-2023-24626.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From e9ad41bfedb4537a6f0de20f00b27c7739f168f7 Mon Sep 17 00:00:00 2001
-From: Alexander Naumov <alexander_naumov@opensuse.org>
-Date: Mon, 30 Jan 2023 17:22:25 +0200
-Subject: fix: missing signal sending permission check on failed query messages
-
-Signed-off-by: Alexander Naumov <alexander_naumov@opensuse.org>
----
- socket.c | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/socket.c b/socket.c
-index 147dc54..54d8cb8 100644
---- a/socket.c
-+++ b/socket.c
-@@ -1285,11 +1285,16 @@ ReceiveMsg()
- else
- queryflag = -1;
-
-- Kill(m.m.command.apid,
-+ if (CheckPid(m.m.command.apid)) {
-+ Msg(0, "Query attempt with bad pid(%d)!", m.m.command.apid);
-+ }
-+ else {
-+ Kill(m.m.command.apid,
- (queryflag >= 0)
- ? SIGCONT
- : SIG_BYE); /* Send SIG_BYE if an error happened */
-- queryflag = -1;
-+ queryflag = -1;
-+ }
- }
- break;
- case MSG_COMMAND:
diff --git a/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch b/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch
deleted file mode 100644
index 63872219a23f..000000000000
--- a/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Bug: https://bugs.gentoo.org/894562
-Taken from: https://git.savannah.gnu.org/cgit/screen.git/commit/?id=7f320d3a643ec95682a7213b7e991e27038d8a57
---- a/display.c
-+++ b/display.c
-@@ -27,6 +27,7 @@
- */
-
- #include <sys/types.h>
-+#include <sys/stat.h>
- #include <signal.h>
- #include <fcntl.h>
- #ifndef sun
diff --git a/app-misc/screen/files/screen-4.9.0-configure-implicit-function-decls.patch b/app-misc/screen/files/screen-4.9.0-configure-implicit-function-decls.patch
deleted file mode 100644
index e3990b2acf88..000000000000
--- a/app-misc/screen/files/screen-4.9.0-configure-implicit-function-decls.patch
+++ /dev/null
@@ -1,747 +0,0 @@
-https://bugs.gentoo.org/869371
-
-Upstream variant: https://lists.gnu.org/archive/html/screen-devel/2022-08/msg00000.html
---- a/configure.ac
-+++ b/configure.ac
-@@ -157,10 +157,11 @@ if test -n "$ULTRIX"; then
- fi
- AC_CHECKING(for POSIX.1)
- AC_EGREP_CPP(YES_IS_DEFINED,
- [#include <sys/types.h>
- #include <unistd.h>
-+int
- main () {
- #ifdef _POSIX_VERSION
- YES_IS_DEFINED;
- #endif
- ], AC_NOTE(- you have a POSIX system) AC_DEFINE(POSIX) posix=1)
-@@ -231,10 +232,11 @@ dnl
-
- AC_CHECKING(BSD job jontrol)
- AC_TRY_LINK(
- [#include <sys/types.h>
- #include <sys/ioctl.h>
-+#include <unistd.h>
- ], [
- #ifdef POSIX
- tcsetpgrp(0, 0);
- #else
- int x = TIOCSPGRP;
-@@ -248,48 +250,64 @@ int y = TIOCNOTTY;
-
- dnl
- dnl **** setresuid(), setreuid(), seteuid() ****
- dnl
- AC_CHECKING(setresuid)
--AC_TRY_LINK(,[
-+AC_TRY_LINK(
-+[#include <unistd.h>
-+], [
- setresuid(0, 0, 0);
- ], AC_DEFINE(HAVE_SETRESUID))
- AC_CHECKING(setreuid)
--AC_TRY_LINK(,[
-+AC_TRY_LINK(
-+[#include <unistd.h>
-+], [
- setreuid(0, 0);
- ], AC_DEFINE(HAVE_SETREUID))
- dnl
- dnl seteuid() check:
- dnl linux seteuid was broken before V1.1.11
- dnl NeXT, AUX, ISC, and ultrix are still broken (no saved uid support)
- dnl Solaris seteuid doesn't change the saved uid, bad for
- dnl multiuser screen sessions
- AC_CHECKING(seteuid)
--AC_TRY_LINK(,[
-+AC_TRY_LINK(
-+[#include <unistd.h>
-+],[
- #if defined(linux) || defined(NeXT) || defined(_AUX_SOURCE) || defined(AUX) || defined(ultrix) || (defined(sun) && defined(SVR4)) || defined(ISC) || defined(sony_news)
--seteuid_is_broken(0);
-+int seteuid_is_broken(int); seteuid_is_broken(0);
- #else
- seteuid(0);
- #endif
- ], AC_DEFINE(HAVE_SETEUID))
-
- dnl execvpe
- AC_CHECKING(execvpe)
--AC_TRY_LINK(,[
-+AC_TRY_LINK(
-+[#include <unistd.h>
-+],[
- execvpe(0, 0, 0);
- ], AC_DEFINE(HAVE_EXECVPE)
- CFLAGS="$CFLAGS -D_GNU_SOURCE")
-
- dnl
- dnl **** select() ****
- dnl
-
- AC_CHECKING(select)
--AC_TRY_LINK(,[select(0, 0, 0, 0, 0);],,
-+AC_TRY_LINK(
-+[#include <sys/select.h>
-+],[
-+ select(0, 0, 0, 0, 0);
-+],,
- LIBS="$LIBS -lnet -lnsl"
- AC_CHECKING(select with $LIBS)
--AC_TRY_LINK(,[select(0, 0, 0, 0, 0);],,
-+AC_TRY_LINK(
-+[#include <sys/select.h>
-+],[
-+ select(0, 0, 0, 0, 0);
-+],,
- AC_MSG_ERROR(!!! no select - no screen))
- )
- dnl
- dnl **** FIFO tests ****
- dnl
-@@ -314,11 +332,11 @@ AC_TRY_RUN([
- #define S_IFIFO 0010000
- #endif
-
- char *fin = "/tmp/conftest$$";
-
--main()
-+int main()
- {
- struct stat stb;
- fd_set f;
-
- (void)alarm(5);
-@@ -326,40 +344,40 @@ main()
- #ifdef POSIX
- if (mkfifo(fin, 0777))
- #else
- if (mknod(fin, S_IFIFO|0777, 0))
- #endif
-- exit(1);
-+ return 1;
- if (stat(fin, &stb) || (stb.st_mode & S_IFIFO) != S_IFIFO)
-- exit(1);
-+ return 1;
- close(0);
- #ifdef __386BSD__
- /*
- * The next test fails under 386BSD, but screen works using fifos.
- * Fifos in O_RDWR mode are only used for the BROKEN_PIPE case and for
- * the select() configuration test.
- */
-- exit(0);
-+ return 0;
- #endif
- if (open(fin, O_RDONLY | O_NONBLOCK))
-- exit(1);
-+ return 1;
- if (fork() == 0)
- {
- close(0);
- if (open(fin, O_WRONLY | O_NONBLOCK))
-- exit(1);
-+ return 1;
- close(0);
- if (open(fin, O_WRONLY | O_NONBLOCK))
-- exit(1);
-+ return 1;
- if (write(0, "TEST", 4) == -1)
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- FD_SET(0, &f);
- if (select(1, &f, 0, 0, 0) == -1)
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- ], AC_NOTE(- your fifos are usable) fifo=1,
- AC_NOTE(- your fifos are not usable),
- AC_NOTE(- skipping check because we are cross compiling; assuming fifos are usable) fifo=1)
- rm -f /tmp/conftest*
-@@ -385,30 +403,31 @@ AC_TRY_RUN([
- #define S_IFIFO 0010000
- #endif
-
- char *fin = "/tmp/conftest$$";
-
-+int
- main()
- {
- struct timeval tv;
- fd_set f;
-
- #ifdef POSIX
- if (mkfifo(fin, 0600))
- #else
- if (mknod(fin, S_IFIFO|0600, 0))
- #endif
-- exit(1);
-+ return 1;
- close(0);
- if (open(fin, O_RDONLY|O_NONBLOCK))
-- exit(1);
-+ return 1;
- FD_SET(0, &f);
- tv.tv_sec = 1;
- tv.tv_usec = 0;
- if (select(1, &f, 0, 0, &tv))
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- ], AC_NOTE(- your implementation is ok),
- AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1,
- AC_NOTE(- skipping check because we are cross compiling; assuming fifo implementation is ok))
- rm -f /tmp/conftest*
-@@ -432,46 +455,48 @@ AC_TRY_RUN([
-
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <sys/socket.h>
- #include <sys/un.h>
-+#include <signal.h>
-
- char *son = "/tmp/conftest$$";
-
-+int
- main()
- {
- int s1, s2, l;
- struct sockaddr_un a;
- fd_set f;
-
- (void)alarm(5);
- if ((s1 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
-- exit(1);
-+ return 1;
- a.sun_family = AF_UNIX;
- strcpy(a.sun_path, son);
- (void) unlink(son);
- if (bind(s1, (struct sockaddr *) &a, strlen(son)+2) == -1)
-- exit(1);
-+ return 1;
- if (listen(s1, 2))
-- exit(1);
-+ return 1;
- if (fork() == 0)
- {
- if ((s2 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
- kill(getppid(), 3);
- (void)connect(s2, (struct sockaddr *)&a, strlen(son) + 2);
- if (write(s2, "HELLO", 5) == -1)
- kill(getppid(), 3);
-- exit(0);
-+ return 0;
- }
- l = sizeof(a);
- close(0);
- if (accept(s1, &a, &l))
-- exit(1);
-+ return 1;
- FD_SET(0, &f);
- if (select(1, &f, 0, 0, 0) == -1)
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- ], AC_NOTE(- your sockets are usable) sock=1,
- AC_NOTE(- your sockets are not usable),
- AC_NOTE(- skipping check because we are cross compiling; assuming sockets are usable) sock=1)
- rm -f /tmp/conftest*
-@@ -491,26 +516,27 @@ AC_TRY_RUN([
- #include <sys/socket.h>
- #include <sys/un.h>
-
- char *son = "/tmp/conftest$$";
-
-+int
- main()
- {
- int s;
- struct stat stb;
- struct sockaddr_un a;
- if ((s = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
-- exit(0);
-+ return 0;
- a.sun_family = AF_UNIX;
- strcpy(a.sun_path, son);
- (void) unlink(son);
- if (bind(s, (struct sockaddr *) &a, strlen(son)+2) == -1)
-- exit(0);
-+ return 0;
- if (stat(son, &stb))
-- exit(1);
-+ return 1;
- close(s);
-- exit(0);
-+ return 0;
- }
- ],AC_NOTE(- you are normal),
- AC_NOTE(- unix domain sockets are not kept in the filesystem)
- AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1,
- AC_NOTE(- skipping check because we are cross compiling; assuming sockets are normal))
-@@ -545,122 +571,167 @@ char *nam = "/tmp/conftest$$";
- #endif
- #ifndef S_IFIFO
- #define S_IFIFO 0010000
- #endif
-
-+int
- main()
- {
- fd_set f;
-
- #ifdef __FreeBSD__
- /* From Andrew A. Chernov (ache@astral.msk.su):
- * opening RDWR fifo fails in BSD 4.4, but select return values are
- * right.
- */
-- exit(0);
-+ return 0;
- #endif
- (void)alarm(5);
- #ifdef POSIX
- if (mkfifo(nam, 0777))
- #else
- if (mknod(nam, S_IFIFO|0777, 0))
- #endif
-- exit(1);
-+ return 1;
- close(0);
- if (open(nam, O_RDWR | O_NONBLOCK))
-- exit(1);
-+ return 1;
- if (write(0, "TEST", 4) == -1)
-- exit(1);
-+ return 1;
-
- #else
-
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <sys/un.h>
-+#include <signal.h>
-
-+int
- main()
- {
- int s1, s2, l;
- struct sockaddr_un a;
- fd_set f;
-
- (void)alarm(5);
- if ((s1 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
-- exit(1);
-+ return 1;
- a.sun_family = AF_UNIX;
- strcpy(a.sun_path, nam);
- (void) unlink(nam);
- if (bind(s1, (struct sockaddr *) &a, strlen(nam)+2) == -1)
-- exit(1);
-+ return 1;
- if (listen(s1, 2))
-- exit(1);
-+ return 1;
- if (fork() == 0)
- {
- if ((s2 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
- kill(getppid(), 3);
- (void)connect(s2, (struct sockaddr *)&a, strlen(nam) + 2);
- if (write(s2, "HELLO", 5) == -1)
- kill(getppid(), 3);
-- exit(0);
-+ return 0;
- }
- l = sizeof(a);
- close(0);
- if (accept(s1, (struct sockaddr *)&a, &l))
-- exit(1);
-+ return 1;
- #endif
-
-
- FD_SET(0, &f);
- if (select(1, &f, 0, 0, 0) == -1)
-- exit(1);
-+ return 1;
- if (select(1, &f, &f, 0, 0) != 2)
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- ],AC_NOTE(- select is ok),
- AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN),
- AC_NOTE(- skipping check because we are cross compiling; assuming select is ok))
-
- dnl
- dnl **** termcap or terminfo ****
- dnl
- AC_CHECKING(for tgetent)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK([
-+ #include <curses.h>
-+ #include <term.h>
-+], [
-+ tgetent((char *)0, (char *)0);
-+],,
- olibs="$LIBS"
- LIBS="-lcurses $olibs"
- AC_CHECKING(libcurses)
--AC_TRY_LINK(,[
-+AC_TRY_LINK([#include <curses.h>
-+ #include <term.h>
-+],[
- #ifdef __hpux
- __sorry_hpux_libcurses_is_totally_broken_in_10_10();
- #else
- tgetent((char *)0, (char *)0);
- #endif
- ],,
- LIBS="-ltermcap $olibs"
- AC_CHECKING(libtermcap)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- LIBS="-ltermlib $olibs"
- AC_CHECKING(libtermlib)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- LIBS="-lncursesw $olibs"
- AC_CHECKING(libncursesw)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- LIBS="-ltinfow $olibs"
- AC_CHECKING(libtinfow)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- LIBS="-lncurses $olibs"
- AC_CHECKING(libncurses)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- LIBS="-ltinfo $olibs"
- AC_CHECKING(libtinfo)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-+AC_TRY_LINK(
-+[#include <curses.h>
-+ #include <term.h>
-+],[
-+ tgetent((char *)0, (char *)0);
-+],,
- AC_MSG_ERROR(!!! no tgetent - no screen)))))))))
-
- AC_TRY_RUN([
-+#include <curses.h>
-+#include <string.h>
-+#include <term.h>
-+
-+int
- main()
- {
-- exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
-+ return(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
- }], AC_NOTE(- you use the termcap database),
- AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO),
- AC_NOTE(- skipping check because we are cross compiling; assuming terminfo database is used) AC_DEFINE(TERMINFO))
- AC_CHECKING(ospeed)
- AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
-@@ -677,11 +748,15 @@ fi
-
- if test "$cross_compiling" = no ; then
- AC_CHECKING(for SVR4 ptys)
- sysvr4ptys=
- if test -c /dev/ptmx ; then
--AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)
-+AC_TRY_LINK([
-+ #include <stdlib.h>
-+], [
-+ ptsname(0);grantpt(0);unlockpt(0);
-+],[AC_DEFINE(HAVE_SVR4_PTYS)
- sysvr4ptys=1])
- fi
- fi
-
- AC_CHECK_FUNCS(getpt)
-@@ -733,33 +808,36 @@ AC_CHECKING(default tty permissions/group)
- rm -f conftest_grp
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <stdio.h>
-+#include <stdlib.h>
-+#include <unistd.h>
-+int
- main()
- {
- struct stat sb;
- char *x,*ttyname();
- int om, m;
- FILE *fp;
-
-- if (!(x = ttyname(0))) exit(1);
-- if (stat(x, &sb)) exit(1);
-+ if (!(x = ttyname(0))) return 1;
-+ if (stat(x, &sb)) return 1;
- om = sb.st_mode;
-- if (om & 002) exit(0);
-+ if (om & 002) return 0;
- m = system("mesg y");
-- if (m == -1 || m == 127) exit(1);
-- if (stat(x, &sb)) exit(1);
-+ if (m == -1 || m == 127) return 1;
-+ if (stat(x, &sb)) return 1;
- m = sb.st_mode;
-- if (chmod(x, om)) exit(1);
-- if (m & 002) exit(0);
-- if (sb.st_gid == getgid()) exit(1);
-+ if (chmod(x, om)) return 1;
-+ if (m & 002) return 0;
-+ if (sb.st_gid == getgid()) return 1;
- if (!(fp=fopen("conftest_grp", "w")))
-- exit(1);
-+ return 1;
- fprintf(fp, "%d\n", sb.st_gid);
- fclose(fp);
-- exit(0);
-+ return 0;
- }
- ],[
- if test -f conftest_grp; then
- ptygrp=`cat conftest_grp`
- AC_NOTE([- pty mode: $ptymode, group: $ptygrp])
-@@ -869,17 +942,25 @@ AC_CHECKING(for libutil(s))
- test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils"
- test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil"
- fi
-
- AC_CHECKING(getloadavg)
--AC_TRY_LINK(,[getloadavg((double *)0, 0);],
-+AC_TRY_LINK(
-+[
-+ #include <stdlib.h>
-+],[
-+ getloadavg((double *)0, 0);],
- AC_DEFINE(LOADAV_GETLOADAVG) load=1,
- if test "$cross_compiling" = no && test -f /usr/lib/libkvm.a ; then
- olibs="$LIBS"
- LIBS="$LIBS -lkvm"
- AC_CHECKING(getloadavg with -lkvm)
--AC_TRY_LINK(,[getloadavg((double *)0, 0);],
-+AC_TRY_LINK(
-+[
-+ #include <stdlib.h>
-+],[
-+ getloadavg((double *)0, 0);],
- AC_DEFINE(LOADAV_GETLOADAVG) load=1, LIBS="$olibs")
- fi
- )
-
- if test -z "$load" ; then
-@@ -931,10 +1012,11 @@ else
-
- $nlist64
-
- struct nlist nl[2];
-
-+int
- main()
- {
- #if !defined(_AUX_SOURCE) && !defined(AUX)
- # ifdef NLIST_NAME_UNION
- nl[0].n_un.n_name = "$av";
-@@ -944,12 +1026,12 @@ main()
- #else
- strncpy(nl[0].n_name, "$av", sizeof(nl[0].n_name));
- #endif
- nlist(LOADAV_UNIX, nl);
- if (nl[0].n_value == 0)
-- exit(1);
-- exit(0);
-+ return 1;
-+ return 0;
- }
- ],avensym=$av;break)
- if test "$av" = _Loadavg; then
- nlist64='#define nlist nlist64'
- fi
-@@ -1068,21 +1150,22 @@ void
- hand()
- {
- got++;
- }
-
-+int
- main()
- {
- /* on hpux we use sigvec to get bsd signals */
- #ifdef __hpux
- (void)signal(SIGCLD, hand);
- kill(getpid(), SIGCLD);
- kill(getpid(), SIGCLD);
- if (got < 2)
-- exit(1);
-+ return 1;
- #endif
-- exit(0);
-+ return 0;
- }
- ],,AC_DEFINE(SYSVSIGS),:)
-
- fi
-
-@@ -1107,14 +1190,22 @@ oldlibs="$LIBS"
- LIBS="$LIBS -lsun"
- AC_CHECKING(IRIX sun library)
- AC_TRY_LINK(,,,LIBS="$oldlibs")
-
- AC_CHECKING(syslog)
--AC_TRY_LINK(,[closelog();], , [oldlibs="$LIBS"
-+AC_TRY_LINK(
-+[#include <syslog.h>
-+], [
-+ closelog();
-+], , [oldlibs="$LIBS"
- LIBS="$LIBS -lbsd"
- AC_CHECKING(syslog in libbsd.a)
--AC_TRY_LINK(, [closelog();], AC_NOTE(- found.), [LIBS="$oldlibs"
-+AC_TRY_LINK(
-+[#include <syslog.h>
-+], [
-+ closelog();
-+], AC_NOTE(- found.), [LIBS="$oldlibs"
- AC_NOTE(- bad news: syslog missing.) AC_DEFINE(NOSYSLOG)])])
-
- AC_EGREP_CPP(YES_IS_DEFINED,
- [#ifdef M_UNIX
- YES_IS_DEFINED;
-@@ -1147,66 +1238,87 @@ fi
- dnl AC_CHECK_HEADER(shadow.h, AC_DEFINE(SHADOWPW))
- AC_CHECKING(getspnam)
- AC_TRY_LINK([#include <shadow.h>], [getspnam("x");],AC_DEFINE(SHADOWPW))
-
- AC_CHECKING(getttyent)
--AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT))
-+AC_TRY_LINK(
-+[
-+ #include <ttyent.h>
-+],[
-+ getttyent();
-+], AC_DEFINE(GETTTYENT))
-
- AC_CHECKING(fdwalk)
- AC_TRY_LINK([#include <stdlib.h>], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK))
-
- AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments)
- AC_TRY_RUN([
-+#include <string.h>
-+
-+int
- main() {
- char buf[10];
- strcpy(buf, "abcdefghi");
- bcopy(buf, buf + 2, 3);
- if (strncmp(buf, "ababcf", 6))
-- exit(1);
-+ return 1;
- strcpy(buf, "abcdefghi");
- bcopy(buf + 2, buf, 3);
- if (strncmp(buf, "cdedef", 6))
-- exit(1);
-- exit(0); /* libc version works properly. */
-+ return 1;
-+ return 0; /* libc version works properly. */
- }], AC_DEFINE(USEBCOPY),,:)
-
- AC_TRY_RUN([
-+#include <string.h>
-+
- #define bcopy(s,d,l) memmove(d,s,l)
-+int
- main() {
- char buf[10];
- strcpy(buf, "abcdefghi");
- bcopy(buf, buf + 2, 3);
- if (strncmp(buf, "ababcf", 6))
-- exit(1);
-+ return 1;
- strcpy(buf, "abcdefghi");
- bcopy(buf + 2, buf, 3);
- if (strncmp(buf, "cdedef", 6))
-- exit(1);
-- exit(0); /* libc version works properly. */
-+ return 1;
-+ return 0; /* libc version works properly. */
- }], AC_DEFINE(USEMEMMOVE),,
- AC_NOTE(- skipping check because we are cross compiling; use memmove) AC_DEFINE(USEMEMMOVE))
-
-
- AC_TRY_RUN([
-+#include <string.h>
-+
- #define bcopy(s,d,l) memcpy(d,s,l)
-+int
- main() {
- char buf[10];
- strcpy(buf, "abcdefghi");
- bcopy(buf, buf + 2, 3);
- if (strncmp(buf, "ababcf", 6))
-- exit(1);
-+ return 1;
- strcpy(buf, "abcdefghi");
- bcopy(buf + 2, buf, 3);
- if (strncmp(buf, "cdedef", 6))
-- exit(1);
-- exit(0); /* libc version works properly. */
-+ return 1;
-+ return 0; /* libc version works properly. */
- }], AC_DEFINE(USEMEMCPY),,:)
-
- AC_SYS_LONG_FILE_NAMES
-
- AC_MSG_CHECKING(for vsprintf)
--AC_TRY_LINK([#include <stdarg.h>],[va_list valist; vsprintf(0,0,valist);], AC_MSG_RESULT(yes);AC_DEFINE(USEVARARGS), AC_MSG_RESULT(no))
-+AC_TRY_LINK(
-+[
-+ #include <stdarg.h>
-+ #include <stdio.h>
-+],
-+[
-+ va_list valist; vsprintf(0,0,valist);
-+], AC_MSG_RESULT(yes);AC_DEFINE(USEVARARGS), AC_MSG_RESULT(no))
-
- AC_HEADER_DIRENT
-
- AC_MSG_CHECKING(for setenv)
- if test -z "$ac_setenv_args"; then
-
diff --git a/app-misc/screen/screen-4.9.0-r3.ebuild b/app-misc/screen/screen-4.9.0-r3.ebuild
deleted file mode 100644
index b8f91b3d4eb1..000000000000
--- a/app-misc/screen/screen-4.9.0-r3.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools flag-o-matic pam tmpfiles
-
-DESCRIPTION="screen manager with VT100/ANSI terminal emulation"
-HOMEPAGE="https://www.gnu.org/software/screen/"
-
-if [[ ${PV} != 9999 ]] ; then
- SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-else
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git"
- EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
- S="${WORKDIR}"/${P}/src
-fi
-
-LICENSE="GPL-3+"
-SLOT="0"
-IUSE="debug nethack pam selinux multiuser"
-
-DEPEND=">=sys-libs/ncurses-5.2:=
- virtual/libcrypt:=
- pam? ( sys-libs/pam )"
-RDEPEND="${DEPEND}
- acct-group/utmp
- selinux? ( sec-policy/selinux-screen )"
-BDEPEND="sys-apps/texinfo"
-
-PATCHES=(
- # Don't use utempter even if it is found on the system.
- "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch
- "${FILESDIR}"/${PN}-4.6.2-utmp-exit.patch
- "${FILESDIR}"/${PN}-4.9.0-configure-implicit-function-decls.patch
- "${FILESDIR}"/${P}-CVE-2023-24626.patch
- "${FILESDIR}"/${PN}-4.9.0-clang16-chmod.patch
-)
-
-src_prepare() {
- default
-
- # sched.h is a system header and causes problems with some C libraries
- mv sched.h _sched.h || die
- sed -i '/include/ s:sched.h:_sched.h:' screen.h || die
-
- # Fix manpage
- sed -i \
- -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
- -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \
- -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
- -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \
- -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \
- doc/screen.1 || die
-
- if [[ ${CHOST} == *-darwin* ]] || use elibc_musl; then
- sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die
- fi
-
- # disable musl dummy headers for utmp[x]
- use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H"
-
- # reconfigure
- eautoreconf
-}
-
-src_configure() {
- append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}"
-
- if [[ ${CHOST} == *-solaris* ]]; then
- # enable msg_header by upping the feature standard compatible
- # with c99 mode
- append-cppflags -D_XOPEN_SOURCE=600
- fi
-
- use nethack || append-cppflags "-DNONETHACK"
- use debug && append-cppflags "-DDEBUG"
-
- local myeconfargs=(
- --with-socket-dir="${EPREFIX}/tmp/${PN}"
- --with-sys-screenrc="${EPREFIX}/etc/screenrc"
- --with-pty-mode=0620
- --with-pty-group=5
- --enable-rxvt_osc
- --enable-telnet
- --enable-colors256
- $(use_enable pam)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- LC_ALL=POSIX emake comm.h term.h
- emake osdef.h
-
- emake -C doc screen.info
- default
-}
-
-src_install() {
- local DOCS=(
- README ChangeLog INSTALL TODO NEWS* patchlevel.h
- doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps}
- )
-
- emake DESTDIR="${D}" SCREEN="${P}" install
-
- local tmpfiles_perms tmpfiles_group
-
- if use multiuser || use prefix ; then
- fperms 4755 /usr/bin/${P}
- tmpfiles_perms="0755"
- tmpfiles_group="root"
- else
- fowners root:utmp /usr/bin/${P}
- fperms 2755 /usr/bin/${P}
- tmpfiles_perms="0775"
- tmpfiles_group="utmp"
- fi
-
- newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}"
-
- insinto /usr/share/${PN}
- doins terminfo/{screencap,screeninfo.src}
-
- insinto /etc
- doins "${FILESDIR}"/screenrc
-
- if use pam; then
- pamd_mimic_system screen auth
- fi
-
- dodoc "${DOCS[@]}"
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "Some dangerous key bindings have been removed or changed to more safe values."
- elog "We enable some xterm hacks in our default screenrc, which might break some"
- elog "applications. Please check /etc/screenrc for information on these changes."
- fi
-
- tmpfiles_process screen.conf
-
- ewarn "This revision changes the screen socket location to ${EROOT}/tmp/${PN}"
-}
diff --git a/app-misc/screen/screen-4.9.1.ebuild b/app-misc/screen/screen-4.9.1.ebuild
deleted file mode 100644
index d8989279a739..000000000000
--- a/app-misc/screen/screen-4.9.1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools flag-o-matic pam tmpfiles
-
-DESCRIPTION="screen manager with VT100/ANSI terminal emulation"
-HOMEPAGE="https://www.gnu.org/software/screen/"
-
-if [[ ${PV} != 9999 ]] ; then
- SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-else
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git"
- EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
- S="${WORKDIR}"/${P}/src
-fi
-
-LICENSE="GPL-3+"
-SLOT="0"
-IUSE="debug nethack pam selinux multiuser"
-
-DEPEND=">=sys-libs/ncurses-5.2:=
- virtual/libcrypt:=
- pam? ( sys-libs/pam )"
-RDEPEND="${DEPEND}
- acct-group/utmp
- selinux? ( sec-policy/selinux-screen )"
-BDEPEND="sys-apps/texinfo"
-
-PATCHES=(
- # Don't use utempter even if it is found on the system.
- "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch
- "${FILESDIR}"/${PN}-4.9.1-utmp-exit.patch
-)
-
-src_prepare() {
- default
-
- # sched.h is a system header and causes problems with some C libraries
- mv sched.h _sched.h || die
- sed -i '/include/ s:sched.h:_sched.h:' screen.h || die
-
- # Fix manpage
- sed -i \
- -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
- -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \
- -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
- -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \
- -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \
- doc/screen.1 || die
-
- if [[ ${CHOST} == *-darwin* ]] || use elibc_musl; then
- sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die
- fi
-
- # disable musl dummy headers for utmp[x]
- use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H"
-
- # reconfigure
- eautoreconf
-}
-
-src_configure() {
- append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}"
-
- if [[ ${CHOST} == *-solaris* ]]; then
- # enable msg_header by upping the feature standard compatible
- # with c99 mode
- append-cppflags -D_XOPEN_SOURCE=600
- fi
-
- use nethack || append-cppflags "-DNONETHACK"
- use debug && append-cppflags "-DDEBUG"
-
- local myeconfargs=(
- --with-socket-dir="${EPREFIX}/tmp/${PN}"
- --with-sys-screenrc="${EPREFIX}/etc/screenrc"
- --with-pty-mode=0620
- --with-pty-group=5
- --enable-rxvt_osc
- --enable-telnet
- --enable-colors256
- $(use_enable pam)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- LC_ALL=POSIX emake comm.h term.h
- emake osdef.h
-
- emake -C doc screen.info
- default
-}
-
-src_install() {
- local DOCS=(
- README ChangeLog INSTALL TODO NEWS* patchlevel.h
- doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps}
- )
-
- emake DESTDIR="${D}" SCREEN="${P}" install
-
- local tmpfiles_perms tmpfiles_group
-
- if use multiuser || use prefix ; then
- fperms 4755 /usr/bin/${P}
- tmpfiles_perms="0755"
- tmpfiles_group="root"
- else
- fowners root:utmp /usr/bin/${P}
- fperms 2755 /usr/bin/${P}
- tmpfiles_perms="0775"
- tmpfiles_group="utmp"
- fi
-
- newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}"
-
- insinto /usr/share/${PN}
- doins terminfo/{screencap,screeninfo.src}
-
- insinto /etc
- doins "${FILESDIR}"/screenrc
-
- if use pam; then
- pamd_mimic_system screen auth
- fi
-
- dodoc "${DOCS[@]}"
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- elog "Some dangerous key bindings have been removed or changed to more safe values."
- elog "We enable some xterm hacks in our default screenrc, which might break some"
- elog "applications. Please check /etc/screenrc for information on these changes."
- fi
-
- tmpfiles_process screen.conf
-
- ewarn "This revision changes the screen socket location to ${EROOT}/tmp/${PN}"
-}
next reply other threads:[~2025-03-08 20:03 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-08 20:03 Sven Wegener [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-10-16 6:49 [gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/ Sam James
2023-04-10 19:57 Sven Wegener
2022-12-21 22:47 Sam James
2022-09-10 1:57 Sam James
2022-02-19 6:31 Sven Wegener
2021-02-24 19:25 Sven Wegener
2020-02-27 8:59 Lars Wendler
2018-01-04 23:18 Sven Wegener
2018-01-04 23:18 Sven Wegener
2017-03-13 13:03 Lars Wendler
2016-01-29 12:37 Jeroen Roovers
2016-01-23 12:44 Jeroen Roovers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1741464174.2c1e1987432646987c303b165d0213d11d0cc989.swegener@gentoo \
--to=swegener@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox