[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 7825386fe4afd569cac3c27fe0bf72b9b55f2bc1 Author: Sam James gentoo org> AuthorDate: Mon Oct 16 06:49:00 2023 + Commit: Sam James gentoo org> CommitDate: Mon Oct 16 06:49:09 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7825386f app-misc/screen: add 4.9.1 Signed-off-by: Sam James gentoo.org> app-misc/screen/Manifest | 1 + app-misc/screen/files/screen-4.9.1-utmp-exit.patch | 43 ++ app-misc/screen/screen-4.9.1.ebuild| 145 + 3 files changed, 189 insertions(+) diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index 5afb91c4b64a..9412dc3ffb01 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1 +1,2 @@ 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.9.1-utmp-exit.patch b/app-misc/screen/files/screen-4.9.1-utmp-exit.patch new file mode 100644 index ..71c726b352db --- /dev/null +++ b/app-misc/screen/files/screen-4.9.1-utmp-exit.patch @@ -0,0 +1,43 @@ +From 2f1b9dfe03133c9b77ea450aed088d65128dc547 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= +Date: Tue, 5 Apr 2016 12:47:08 +0200 +Subject: [PATCH] check if we have ut_exit in utmpx struct + +--- a/acconfig.h b/acconfig.h +@@ -430,6 +430,11 @@ + */ + #undef BUGGYGETLOGIN + ++/* ++ * 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 +--- a/configure.ac b/configure.ac +@@ -438,6 +438,10 @@ 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* + fi ++AC_CHECKING(ut_exit) ++AC_TRY_COMPILE([ ++#include ++],[struct utmpx u; u.ut_exit.e_exit;], AC_DEFINE(HAVE_UT_EXIT)) + + dnl + dnl SOCKET tests +--- a/utmp.c b/utmp.c +@@ -607,7 +607,7 @@ makedead(u) + 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/screen-4.9.1.ebuild b/app-misc/screen/screen-4.9.1.ebuild new file mode 100644 index ..06145f1ca8e8 --- /dev/null +++ b/app-misc/screen/screen-4.9.1.ebuild @@ -0,0 +1,145 @@ +# 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} != ]] ; then + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 [[
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 5020a4047f9bf00b7cc9423e86ababb049511069 Author: Sven Wegener gentoo org> AuthorDate: Mon Apr 10 19:25:32 2023 + Commit: Sven Wegener gentoo org> CommitDate: Mon Apr 10 19:57:04 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5020a404 app-misc/screen: revbump, security bug #904039 (CVE-2023-24626) Bug: https://bugs.gentoo.org/904039 Signed-off-by: Sven Wegener gentoo.org> .../screen/files/screen-4.9.0-CVE-2023-24626.patch | 33 + app-misc/screen/screen-4.9.0-r2.ebuild | 147 + 2 files changed, 180 insertions(+) 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 new file mode 100644 index ..07dec8ecdd28 --- /dev/null +++ b/app-misc/screen/files/screen-4.9.0-CVE-2023-24626.patch @@ -0,0 +1,33 @@ +From e9ad41bfedb4537a6f0de20f00b27c7739f168f7 Mon Sep 17 00:00:00 2001 +From: Alexander Naumov +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 +--- + 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/screen-4.9.0-r2.ebuild b/app-misc/screen/screen-4.9.0-r2.ebuild new file mode 100644 index ..bd3ba7101992 --- /dev/null +++ b/app-misc/screen/screen-4.9.0-r2.ebuild @@ -0,0 +1,147 @@ +# 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} != ]] ; then + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 +) + +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}" +
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: b878ac639d99cb7aff79304e3fbac58bd74ee652 Author: Sam James gentoo org> AuthorDate: Wed Dec 21 22:20:43 2022 + Commit: Sam James gentoo org> CommitDate: Wed Dec 21 22:25:46 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b878ac63 app-misc/screen: drop 4.8.0-r3, 4.9.0 Bug: https://bugs.gentoo.org/886967 Signed-off-by: Sam James gentoo.org> app-misc/screen/Manifest | 1 - app-misc/screen/files/screen-CVE-2021-26937.patch | 61 - app-misc/screen/screen-4.8.0-r3.ebuild| 149 -- app-misc/screen/screen-4.9.0.ebuild | 145 - 4 files changed, 356 deletions(-) diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index b9fe20e2f00b..5afb91c4b64a 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1,2 +1 @@ -DIST screen-4.8.0.tar.gz 854854 BLAKE2B 97ef6f18bf2c63c477260b742ac0b3501f112d380c41ccecc5cf2853db853cc62d4fd6d37edeca35fb41a43b76d98a5cfe160749c992d284f9764b0a0fdcc778 SHA512 770ebaf6ee9be711bcb8a6104b3294f2bf4523dae6683fdc5eac4b3aff7e511be2d922b6b2ad28ec241113c2e4fe0d80f9a482ae1658adc19c8c3a3680caa25c DIST screen-4.9.0.tar.gz 798229 BLAKE2B 0f64a14ce9a719bd4a6d045c55069769045a09ee2086c44c2e3d9da6d1e5ada2f094e00e16029767e1155ce35d4f360d0e2879995eefa052f3214ced71b7617c SHA512 18bbb085d77ecd02cbc02fa88a945c39f06e0c6de4eeaa16b278440dac5c9896811abbe0838144e997cd344ae08b9530399fa8fcb31a65fc571ead90e8307f84 diff --git a/app-misc/screen/files/screen-CVE-2021-26937.patch b/app-misc/screen/files/screen-CVE-2021-26937.patch deleted file mode 100644 index 9556278274e8.. --- a/app-misc/screen/files/screen-CVE-2021-26937.patch +++ /dev/null @@ -1,61 +0,0 @@ - encoding.c | 15 +-- - 1 file changed, 9 insertions(+), 6 deletions(-) - -diff --git i/encoding.c w/encoding.c -index e5db3e7..79f5d14 100644 i/encoding.c -+++ w/encoding.c -@@ -43,7 +43,7 @@ static int encmatch __P((char *, char *)); - # ifdef UTF8 - static int recode_char __P((int, int, int)); - static int recode_char_to_encoding __P((int, int)); --static void comb_tofront __P((int, int)); -+static void comb_tofront __P((int)); - # ifdef DW_CHARS - static int recode_char_dw __P((int, int *, int, int)); - static int recode_char_dw_to_encoding __P((int, int *, int)); -@@ -1263,6 +1263,8 @@ int c; - {0x3, 0x3FFFD}, - }; - -+ if (c >= 0xdf00 && c <= 0xdfff) -+return 1; /* dw combining sequence */ - return ((bisearch(c, wide, sizeof(wide) / sizeof(struct interval) - 1)) || - (cjkwidth && -bisearch(c, ambiguous, -@@ -1330,11 +1332,12 @@ int c; - } - - static void --comb_tofront(root, i) --int root, i; -+comb_tofront(i) -+int i; - { - for (;;) - { -+ int root = i >= 0x700 ? 0x801 : 0x800; - debug1("bring to front: %x\n", i); - combchars[combchars[i]->prev]->next = combchars[i]->next; - combchars[combchars[i]->next]->prev = combchars[i]->prev; -@@ -1396,9 +1399,9 @@ struct mchar *mc; - { - /* full, recycle old entry */ - if (c1 >= 0xd800 && c1 < 0xe000) --comb_tofront(root, c1 - 0xd800); -+comb_tofront(c1 - 0xd800); - i = combchars[root]->prev; -- if (c1 == i + 0xd800) -+ if (i == 0x800 || i == 0x801 || c1 == i + 0xd800) - { - /* completely full, can't recycle */ - debug("utf8_handle_comp: completely full!\n"); -@@ -1422,7 +1425,7 @@ struct mchar *mc; - mc->font = (i >> 8) + 0xd8; - mc->fontx = 0; - debug3("combinig char %x %x -> %x\n", c1, c, i + 0xd800); -- comb_tofront(root, i); -+ comb_tofront(i); - } - - #else /* !UTF8 */ diff --git a/app-misc/screen/screen-4.8.0-r3.ebuild b/app-misc/screen/screen-4.8.0-r3.ebuild deleted file mode 100644 index 6807a8d7e80a.. --- a/app-misc/screen/screen-4.8.0-r3.ebuild +++ /dev/null @@ -1,149 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools flag-o-matic pam tmpfiles toolchain-funcs - -DESCRIPTION="screen manager with VT100/ANSI terminal emulation" -HOMEPAGE="https://www.gnu.org/software/screen/; - -if [[ "${PV}" != ]] ; then - SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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" - -CDEPEND=" - >=sys-libs/ncurses-5.2:0= - virtual/libcrypt:= - pam? ( sys-libs/pam )" -RDEPEND="${CDEPEND} - acct-group/utmp - selinux? (
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/
commit: 7c5ae2c2b6b69bdca5086db25622111e20c51096 Author: Sam James gentoo org> AuthorDate: Sat Sep 10 13:19:15 2022 + Commit: Sam James gentoo org> CommitDate: Sat Sep 10 13:29:54 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c5ae2c2 app-misc/screen: add link to upstream variant of patch Bug: https://bugs.gentoo.org/869371 Signed-off-by: Sam James gentoo.org> .../screen/files/screen-4.9.0-configure-implicit-function-decls.patch | 2 ++ 1 file changed, 2 insertions(+) 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 index e9db7ba786aa..e3990b2acf88 100644 --- 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 @@ -1,4 +1,6 @@ https://bugs.gentoo.org/869371 + +Upstream variant: https://lists.gnu.org/archive/html/screen-devel/2022-08/msg0.html --- a/configure.ac +++ b/configure.ac @@ -157,10 +157,11 @@ if test -n "$ULTRIX"; then
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 34e05020127fbb74568a573fdec83a60fba0d7c5 Author: Sam James gentoo org> AuthorDate: Sat Sep 10 01:50:59 2022 + Commit: Sam James gentoo org> CommitDate: Sat Sep 10 01:57:16 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34e05020 app-misc/screen: fix build w/ Clang 15 (fix configure tests) Closes: https://bugs.gentoo.org/869371 Thanks-to: Nicholas Vinson gmail.com> Signed-off-by: Sam James gentoo.org> ...n-4.9.0-configure-implicit-function-decls.patch | 745 + app-misc/screen/screen-4.9.0-r1.ebuild | 146 2 files changed, 891 insertions(+) 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 new file mode 100644 index ..e9db7ba786aa --- /dev/null +++ b/app-misc/screen/files/screen-4.9.0-configure-implicit-function-decls.patch @@ -0,0 +1,745 @@ +https://bugs.gentoo.org/869371 +--- 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 + #include ++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 + #include ++#include + ], [ + #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 ++], [ + setresuid(0, 0, 0); + ], AC_DEFINE(HAVE_SETRESUID)) + AC_CHECKING(setreuid) +-AC_TRY_LINK(,[ ++AC_TRY_LINK( ++[#include ++], [ + 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 ++],[ + #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 ++],[ + 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 ++],[ ++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 ++],[ ++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 001 + #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.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, ); + if (select(1, , 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 001 + #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, ); +
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 7b99f401634d79ffe8cd4f0d1f49afa6cc136801 Author: Sven Wegener gentoo org> AuthorDate: Sat Feb 19 06:23:32 2022 + Commit: Sven Wegener gentoo org> CommitDate: Sat Feb 19 06:31:41 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b99f401 app-misc/screen: Revert changes to live ebuild Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Sven Wegener gentoo.org> app-misc/screen/files/screen--no-utempter.patch | 15 +++ app-misc/screen/screen-.ebuild | 17 - 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/app-misc/screen/files/screen--no-utempter.patch b/app-misc/screen/files/screen--no-utempter.patch new file mode 100644 index ..7eccc30c04c5 --- /dev/null +++ b/app-misc/screen/files/screen--no-utempter.patch @@ -0,0 +1,15 @@ +--- i/configure.ac w/configure.ac +@@ -151,12 +151,6 @@ AS_IF([test "x$enable_utmp" = "xyes"], [ + AS_IF([test "x$have_utmpx" != "xyes"], + AC_ERROR(Missing utmpx.h)) + +- AC_CHECK_HEADER(utempter.h, have_utempter=yes, have_utempter=no) +- AS_IF([test "x$have_utempter" = "xyes"], [ +- AC_DEFINE(HAVE_UTEMPTER) +- LIBS="$LIBS -lutempter" +- ]) +- + AC_MSG_CHECKING(if utmpx struct has ut_host field) + AC_TRY_COMPILE([#include ], [ + struct utmpx u; diff --git a/app-misc/screen/screen-.ebuild b/app-misc/screen/screen-.ebuild index 18779966236e..abdf2c2458a2 100644 --- a/app-misc/screen/screen-.ebuild +++ b/app-misc/screen/screen-.ebuild @@ -32,8 +32,7 @@ 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}"/${P}-no-utempter.patch ) src_prepare() { @@ -41,7 +40,9 @@ src_prepare() { # 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 + sed -i '/include/ s:sched\.h:_sched.h:' \ + screen.h winmsg.c window.h sched.c canvas.h || die + sed -i 's@[[:space:]]sched\.h@ _sched.h@' Makefile.in || die # Fix manpage sed -i \ @@ -76,13 +77,12 @@ src_configure() { use debug && append-cppflags "-DDEBUG" local myeconfargs=( - --with-socket-dir="${EPREFIX}/tmp/${PN}" - --with-sys-screenrc="${EPREFIX}/etc/screenrc" + --enable-socket-dir="${EPREFIX}/tmp/${PN}" + --with-system_screenrc="${EPREFIX}/etc/screenrc" --with-pty-mode=0620 --with-pty-group=5 - --enable-rxvt_osc --enable-telnet - --enable-colors256 + --enable-utmp $(use_enable pam) ) econf "${myeconfargs[@]}" @@ -90,7 +90,6 @@ src_configure() { src_compile() { LC_ALL=POSIX emake comm.h term.h - emake osdef.h emake -C doc screen.info default @@ -98,7 +97,7 @@ src_compile() { src_install() { local DOCS=( - README ChangeLog INSTALL TODO NEWS* patchlevel.h + README ChangeLog INSTALL TODO NEWS* doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} )
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 3673b1b7cfa56d2e8f5ebc4de3d028774f331c52 Author: Sven Wegener gentoo org> AuthorDate: Wed Feb 24 19:21:31 2021 + Commit: Sven Wegener gentoo org> CommitDate: Wed Feb 24 19:25:15 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3673b1b7 app-misc/screen: Revision bump, security bug #769770 Bug: https://bugs.gentoo.org/769770 Package-Manager: Portage-3.0.13, Repoman-3.0.2 Signed-off-by: Sven Wegener gentoo.org> app-misc/screen/files/screen-CVE-2021-26937.patch | 61 + app-misc/screen/screen-4.8.0-r2.ebuild| 159 ++ 2 files changed, 220 insertions(+) diff --git a/app-misc/screen/files/screen-CVE-2021-26937.patch b/app-misc/screen/files/screen-CVE-2021-26937.patch new file mode 100644 index 000..9556278274e --- /dev/null +++ b/app-misc/screen/files/screen-CVE-2021-26937.patch @@ -0,0 +1,61 @@ + encoding.c | 15 +-- + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git i/encoding.c w/encoding.c +index e5db3e7..79f5d14 100644 +--- i/encoding.c w/encoding.c +@@ -43,7 +43,7 @@ static int encmatch __P((char *, char *)); + # ifdef UTF8 + static int recode_char __P((int, int, int)); + static int recode_char_to_encoding __P((int, int)); +-static void comb_tofront __P((int, int)); ++static void comb_tofront __P((int)); + # ifdef DW_CHARS + static int recode_char_dw __P((int, int *, int, int)); + static int recode_char_dw_to_encoding __P((int, int *, int)); +@@ -1263,6 +1263,8 @@ int c; + {0x3, 0x3FFFD}, + }; + ++ if (c >= 0xdf00 && c <= 0xdfff) ++return 1; /* dw combining sequence */ + return ((bisearch(c, wide, sizeof(wide) / sizeof(struct interval) - 1)) || + (cjkwidth && +bisearch(c, ambiguous, +@@ -1330,11 +1332,12 @@ int c; + } + + static void +-comb_tofront(root, i) +-int root, i; ++comb_tofront(i) ++int i; + { + for (;;) + { ++ int root = i >= 0x700 ? 0x801 : 0x800; + debug1("bring to front: %x\n", i); + combchars[combchars[i]->prev]->next = combchars[i]->next; + combchars[combchars[i]->next]->prev = combchars[i]->prev; +@@ -1396,9 +1399,9 @@ struct mchar *mc; + { + /* full, recycle old entry */ + if (c1 >= 0xd800 && c1 < 0xe000) +-comb_tofront(root, c1 - 0xd800); ++comb_tofront(c1 - 0xd800); + i = combchars[root]->prev; +- if (c1 == i + 0xd800) ++ if (i == 0x800 || i == 0x801 || c1 == i + 0xd800) + { + /* completely full, can't recycle */ + debug("utf8_handle_comp: completely full!\n"); +@@ -1422,7 +1425,7 @@ struct mchar *mc; + mc->font = (i >> 8) + 0xd8; + mc->fontx = 0; + debug3("combinig char %x %x -> %x\n", c1, c, i + 0xd800); +- comb_tofront(root, i); ++ comb_tofront(i); + } + + #else /* !UTF8 */ diff --git a/app-misc/screen/screen-4.8.0-r2.ebuild b/app-misc/screen/screen-4.8.0-r2.ebuild new file mode 100644 index 000..e5fef8fffea --- /dev/null +++ b/app-misc/screen/screen-4.8.0-r2.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic pam tmpfiles toolchain-funcs + +DESCRIPTION="screen manager with VT100/ANSI terminal emulation" +HOMEPAGE="https://www.gnu.org/software/screen/; + +if [[ "${PV}" != ]] ; then + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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-2" +SLOT="0" +IUSE="debug nethack pam selinux multiuser" + +CDEPEND=" + >=sys-libs/ncurses-5.2:0= + pam? ( sys-libs/pam )" +RDEPEND="${CDEPEND} + acct-group/utmp + selinux? ( sec-policy/selinux-screen )" +DEPEND="${CDEPEND} + 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}-CVE-2021-26937.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
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 538c65e61e6e59fde584412ace81081955e84427 Author: Lars Wendler gentoo org> AuthorDate: Thu Feb 27 08:34:33 2020 + Commit: Lars Wendler gentoo org> CommitDate: Thu Feb 27 08:59:36 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=538c65e6 app-misc/screen: Removed old Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Lars Wendler gentoo.org> app-misc/screen/Manifest | 3 - app-misc/screen/files/screen-4.4.0-utmp-musl.patch | 62 app-misc/screen/files/screen-4.5.1-texinfo.patch | 13 -- app-misc/screen/screen-4.4.0.ebuild| 154 app-misc/screen/screen-4.5.1.ebuild| 160 app-misc/screen/screen-4.6.0.ebuild| 158 app-misc/screen/screen-4.6.2.ebuild| 162 - 7 files changed, 712 deletions(-) diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index f850d85971b..0d1264dcf42 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1,6 +1,3 @@ -DIST screen-4.4.0.tar.gz 846010 BLAKE2B 7c7d37b22c1993420dbd8d4083bee0a748f28ace434963b822607747879bda60c1f2f435814e9d07ea88e4bbc1b43b6f600fce204fda7fde4a52a6314a27494a SHA512 6e43f85c419f778822ec85e4340c95769e981a3d51abdeb5f26c6ebb840da9ab11b351ecc7f380ceea39bcfaa87f1124cfebd6af4ecb62b886eb189e7b79981b -DIST screen-4.5.1.tar.gz 963153 BLAKE2B 8f7e20a0a3dde58435fc500714b49af97b4f2f225d34394170572e79ab9a8b49beac6c054021db367a01b6da91deaa726284a25c86eb57e11dcd09ad5dc44cb4 SHA512 ca53477ad38264be38efb1d10a1337b647dd061127162c77533b17a30d046cd0caabe38e4a9e5389aac30d5dc62eb53e7877411e69adae36d0ca869bd0a82804 -DIST screen-4.6.0.tar.gz 849062 BLAKE2B e08915bb34d4e356eb33c479f1b2dc7a8f4a855e9d1c27490ff31cfc88b4bd9dfb11101dd0e4508f3b37b023b9f9b987dfaff4c6cc930e994d22fcb024cf341d SHA512 2ee7cc51c62a478e72eda0647f3f347e63f40384e19bc11b074158bd94cdb628c6425b1dd7a472496d56bff11a30a9dc58859c2e7e539fae2a8718ed9b0f96d7 DIST screen-4.6.1.tar.gz 848979 BLAKE2B e78874b6d8723c52f827ab5e6b665102d7fd831f03a0006f9d31e000535ccce95ce08e2d302e34ba2d567167a917c8bd3b875843828d1951bcb38ab6ae4e0acf SHA512 e5d029400ed5b509ebddc1f55812c33536d6f5ce91119537c7d06e1fa7dee84939c43337df4638f61c818ce0412f4d08fe212202162a4483a9e84bbc4b3e4336 DIST screen-4.6.2.tar.gz 845210 BLAKE2B feea244e2e0c8f638442a524cd7cac93c6c5e576541bf1321fb32bc9424abf53415d00ebcb4a13a9613788c1baad6e132f209bd0a017b100e0687b3658603aea SHA512 224bd16ad5ae501d1b8bb7d2ba9cc19e6a0743de5a5b320109c2f6bf3b1ca564cc7094ed9211be13733d9d769cde77d13fe236341d448cad0518038ab1e85c99 DIST screen-4.7.0.tar.gz 854192 BLAKE2B f22ee3f3ad7591ee2641ba9667b131298f3cb9b7712b0f0db28516c60d0a0768893eda2f4ce35d9c641871247a638a03c2550328f1af1f85ab5ce8ffa9b77d54 SHA512 44c7a33e2ed772ce91998cdc07556ef7b972e5b100335e14702b273a234e437fe6415de459e7b6d34c6086282a432778629047424ef9159ac6fcf26d22b45745 diff --git a/app-misc/screen/files/screen-4.4.0-utmp-musl.patch b/app-misc/screen/files/screen-4.4.0-utmp-musl.patch deleted file mode 100644 index 990c73042cd..000 --- a/app-misc/screen/files/screen-4.4.0-utmp-musl.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 74fdc8988b55633cd05f8625390cd3f6a8102003 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= -Date: Sat, 13 Jun 2015 17:52:46 +0200 -Subject: [PATCH] change checks for utmp/utmpx in header - -linuxes should've working utmpx, so this check was bit weird -commit 2b1bdf96 mentions some "linux workaround", but nothing specific - -fixes build with musl libc - os.h | 7 --- - utmp.c | 4 ++-- - 2 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/os.h b/os.h -index 55de249..e827ac9 100644 a/os.h -+++ b/os.h -@@ -250,9 +250,11 @@ extern int errno; - #endif - - #if defined(UTMPOK) || defined(BUGGYGETLOGIN) --# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux) -+# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) - # include --# define UTMPFILEUTMPX_FILE -+# ifdef UTMPX_FILE /* GNU extension */ -+# define UTMPFILE UTMPX_FILE -+# endif - # define utmputmpx - # define getutentgetutxent - # define getutid getutxid -@@ -260,7 +262,6 @@ extern int errno; - # define pututline pututxline - # define setutentsetutxent - # define endutentendutxent --# define ut_time ut_xtime - # else /* SVR4 */ - # include - # endif /* SVR4 */ -diff --git a/utmp.c b/utmp.c -index fa8b87b..f5d7db8 100644 a/utmp.c -+++ b/utmp.c -@@ -631,7 +631,7 @@ int pid; - /* must use temp variable because of NetBSD/sparc64, where -* ut_xtime is long(64) but time_t is int(32) */ - (void)time(); -- u->ut_time = now; -+ u->ut_tv.tv_sec = now; - } - - static slot_t -@@ -743,7 +743,7 @@ int pid; - strncpy(u->ut_line, line, sizeof(u->ut_line)); - strncpy(u->ut_name, user, sizeof(u->ut_name)); - (void)time();
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 2aacf8d5e4052441f9bb791051a30146bf65793e Author: Sven Wegener gentoo org> AuthorDate: Thu Jan 4 23:15:15 2018 + Commit: Sven Wegener gentoo org> CommitDate: Thu Jan 4 23:18:40 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2aacf8d5 app-misc/screen: Fix building on musl libc, bug #639424 Closes: https://bugs.gentoo.org/639424 Package-Manager: Portage-2.3.14, Repoman-2.3.6 app-misc/screen/files/screen-4.4.0-utmp-musl.patch | 62 ++ app-misc/screen/screen-4.4.0.ebuild| 3 +- 2 files changed, 64 insertions(+), 1 deletion(-) diff --git a/app-misc/screen/files/screen-4.4.0-utmp-musl.patch b/app-misc/screen/files/screen-4.4.0-utmp-musl.patch new file mode 100644 index 000..990c73042cd --- /dev/null +++ b/app-misc/screen/files/screen-4.4.0-utmp-musl.patch @@ -0,0 +1,62 @@ +From 74fdc8988b55633cd05f8625390cd3f6a8102003 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?=+Date: Sat, 13 Jun 2015 17:52:46 +0200 +Subject: [PATCH] change checks for utmp/utmpx in header + +linuxes should've working utmpx, so this check was bit weird +commit 2b1bdf96 mentions some "linux workaround", but nothing specific + +fixes build with musl libc +--- + os.h | 7 --- + utmp.c | 4 ++-- + 2 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/os.h b/os.h +index 55de249..e827ac9 100644 +--- a/os.h b/os.h +@@ -250,9 +250,11 @@ extern int errno; + #endif + + #if defined(UTMPOK) || defined(BUGGYGETLOGIN) +-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux) ++# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) + # include +-# define UTMPFILEUTMPX_FILE ++# ifdef UTMPX_FILE /* GNU extension */ ++# define UTMPFILE UTMPX_FILE ++# endif + # define utmputmpx + # define getutentgetutxent + # define getutid getutxid +@@ -260,7 +262,6 @@ extern int errno; + # define pututline pututxline + # define setutentsetutxent + # define endutentendutxent +-# define ut_time ut_xtime + # else /* SVR4 */ + # include + # endif /* SVR4 */ +diff --git a/utmp.c b/utmp.c +index fa8b87b..f5d7db8 100644 +--- a/utmp.c b/utmp.c +@@ -631,7 +631,7 @@ int pid; + /* must use temp variable because of NetBSD/sparc64, where +* ut_xtime is long(64) but time_t is int(32) */ + (void)time(); +- u->ut_time = now; ++ u->ut_tv.tv_sec = now; + } + + static slot_t +@@ -743,7 +743,7 @@ int pid; + strncpy(u->ut_line, line, sizeof(u->ut_line)); + strncpy(u->ut_name, user, sizeof(u->ut_name)); + (void)time(); +- u->ut_time = now; ++ u->ut_tv.tv_sec = now; + } + + static slot_t diff --git a/app-misc/screen/screen-4.4.0.ebuild b/app-misc/screen/screen-4.4.0.ebuild index 0ee4276016c..0dfbfbc066c 100644 --- a/app-misc/screen/screen-4.4.0.ebuild +++ b/app-misc/screen/screen-4.4.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -26,6 +26,7 @@ DEPEND="${CDEPEND} # - Don't use utempter even if it is found on the system. PATCHES=( "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch + "${FILESDIR}"/${P}-utmp-musl.patch ) pkg_setup() {
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 10f7f30cb2ade13389c2a104128a9b86355f52c6 Author: Sven Wegener gentoo org> AuthorDate: Thu Jan 4 23:16:48 2018 + Commit: Sven Wegener gentoo org> CommitDate: Thu Jan 4 23:18:40 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=10f7f30c app-misc/screen: Fix building on uclibc, bug #562752 Closes: https://bugs.gentoo.org/562752 Package-Manager: Portage-2.3.14, Repoman-2.3.6 app-misc/screen/files/screen-4.6.2-utmp-exit.patch | 55 ++ app-misc/screen/screen-4.6.2.ebuild| 3 +- 2 files changed, 57 insertions(+), 1 deletion(-) 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 new file mode 100644 index 000..11adf69a536 --- /dev/null +++ b/app-misc/screen/files/screen-4.6.2-utmp-exit.patch @@ -0,0 +1,55 @@ +From 2f1b9dfe03133c9b77ea450aed088d65128dc547 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?=+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 ++],[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/screen-4.6.2.ebuild b/app-misc/screen/screen-4.6.2.ebuild index 01169b42901..7b571355fa9 100644 --- a/app-misc/screen/screen-4.6.2.ebuild +++ b/app-misc/screen/screen-4.6.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -35,6 +35,7 @@ DEPEND="${CDEPEND} PATCHES=( # Don't use utempter even if it is found on the system. "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch + "${FILESDIR}"/${P}-utmp-exit.patch ) pkg_setup() {
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 0a73481226e17813598f9bd19388a1108242ab08 Author: Lars Wendler gentoo org> AuthorDate: Mon Mar 13 13:03:26 2017 + Commit: Lars Wendler gentoo org> CommitDate: Mon Mar 13 13:03:26 2017 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a734812 app-misc/screen: Removed old. Package-Manager: Portage-2.3.4, Repoman-2.3.2 app-misc/screen/Manifest | 2 - app-misc/screen/files/screen-4.3.1-ansi.c.patch| 37 - .../files/screen-4.5.0-logfile-access-revert.patch | 17 --- .../files/screen-4.5.0-solaris-PATH_MAX.patch | 12 -- app-misc/screen/screen-4.3.1-r1.ebuild | 157 app-misc/screen/screen-4.5.0-r1.ebuild | 162 - 6 files changed, 387 deletions(-) diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index 2f60add8cef..a1eed990c5a 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1,4 +1,2 @@ -DIST screen-4.3.1.tar.gz 845958 SHA256 fa4049f8aee283de62e283d427f2cfd35d6c369b40f7f45f947dbfd915699d63 SHA512 8e8a25b23330a7d8e00fc9e6cc430f0eb3937ccf4183efbd6fd24e4dc04cc09b3acae45bfc24892faee433b18fa79b1cfe0211fd75c0d74ecf908f916bf774aa WHIRLPOOL b47f7538351028cc3a2ec7f69a9373e152fa7655c6ae9feb75ba46db3cdc9b7d58ce78043993b7f134da3a04754c5e52d1a77da4c30a8decda21c79cf5c50f51 DIST screen-4.4.0.tar.gz 846010 SHA256 ef722a54759a3bf23aad272bbf33c414c1078cad6bcd982fada93c0d7917218b SHA512 6e43f85c419f778822ec85e4340c95769e981a3d51abdeb5f26c6ebb840da9ab11b351ecc7f380ceea39bcfaa87f1124cfebd6af4ecb62b886eb189e7b79981b WHIRLPOOL a0d68d2d50f9f50537bf73a6dbb1ecbfe8c6af5c5322003a717431734bdc86a940fc55cd8c3a28b3e5ec572aaa0ceba376d97cbb8c5090a92d499cba2889b322 -DIST screen-4.5.0.tar.gz 963233 SHA256 01c3a7c362185f35d6a95dff52d64337076496acd034d717de3c263500cfefb0 SHA512 b2705ed9604355d4153d7902f820af6131a1f2387650f5c6efeda7acf543aad48e8603c26d7c6e74213c8eece994d5d9bb0d114bc19c8d8f3d8e99c00ea4a484 WHIRLPOOL 04b26e849ae0440778f2eee1a8d8730697a0f8ee933522ec16de697ff0cc189fc67b7e46b7cb218457ab53e491fceff0d70e44417c7c3af5c934cd3fae769382 DIST screen-4.5.1.tar.gz 963153 SHA256 97db2114dd963b016cd4ded34831955dcbe3251e5eee45ac2606e67e9f097b2d SHA512 ca53477ad38264be38efb1d10a1337b647dd061127162c77533b17a30d046cd0caabe38e4a9e5389aac30d5dc62eb53e7877411e69adae36d0ca869bd0a82804 WHIRLPOOL db60013141e3f426107d3f1e518b48fc0bbf89fbf51b26b5ac7208b9940448397ec0009d389365289a1d06421b403982093c8b7ee8d891eea20c704d7ad376b1 diff --git a/app-misc/screen/files/screen-4.3.1-ansi.c.patch b/app-misc/screen/files/screen-4.3.1-ansi.c.patch deleted file mode 100644 index 24a1167b6cf..000 --- a/app-misc/screen/files/screen-4.3.1-ansi.c.patch +++ /dev/null @@ -1,37 +0,0 @@ a/ansi.c -+++ b/ansi.c -@@ -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,15 +2562,14 @@ - } - else - { -+ n = -n; -+ if (ye - ys + 1 < n) -+ n = ye - ys + 1; - if (n < -256) - { - MScrollV(p, n + 256, ys, ye, bce); - n = -256; - } -- n = -n; -- if (ye - ys + 1 < n) -- n = ye - ys + 1; -- - ml = p->w_mlines + ye; - /* Clear lines */ - for (i = ye; i > ye - n; i--, ml--) diff --git a/app-misc/screen/files/screen-4.5.0-logfile-access-revert.patch b/app-misc/screen/files/screen-4.5.0-logfile-access-revert.patch deleted file mode 100644 index ec3fb6a4cf5..000 --- a/app-misc/screen/files/screen-4.5.0-logfile-access-revert.patch +++ /dev/null @@ -1,17 +0,0 @@ -Revert commit 5460f5d28c01a9a58e021eb1dffef2965e629d58 - b/screen.c -+++ a/screen.c -@@ -670,12 +670,6 @@ int main(int ac, char** av) - Panic(0, "-L: logfile name can not start with \"-\" symbol"); - if (strlen(screenlogfile) > PATH_MAX) - Panic(0, "-L: logfile name too long. (max. %d char)", PATH_MAX); -- -- FILE *w_check; -- if ((w_check = fopen(screenlogfile, "w")) == NULL) --Panic(0, "-L: logfile name access problem"); -- else --fclose(w_check); - } - nwin_options.Lflag = 1; - break; diff --git a/app-misc/screen/files/screen-4.5.0-solaris-PATH_MAX.patch b/app-misc/screen/files/screen-4.5.0-solaris-PATH_MAX.patch deleted file mode 100644 index 1fafcf9a87c..000 --- a/app-misc/screen/files/screen-4.5.0-solaris-PATH_MAX.patch +++ /dev/null @@ -1,12 +0,0 @@ -On Solaris one needs to include limits.h in order to use PATH_MAX - screen-4.5.0/screen.c -+++ screen-4.5.0/screen.c -@@ -44,6 +44,7 @@ - #endif - #include - #include -+#include - - #ifdef sgi - # include
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/
commit: b8a69b428cf8199b5b386d8e85f46c3033896fb9 Author: Jeroen Roovers gentoo org> AuthorDate: Wed Jan 18 13:22:49 2017 + Commit: Jeroen Roovers gentoo org> CommitDate: Wed Jan 18 13:22:49 2017 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8a69b42 app-misc/screen: Clean up patch. Package-Manager: Portage-2.3.3, Repoman-2.3.1 app-misc/screen/files/screen-4.3.0-no-utempter.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app-misc/screen/files/screen-4.3.0-no-utempter.patch b/app-misc/screen/files/screen-4.3.0-no-utempter.patch index 9a830a2..e11be5b 100644 --- a/app-misc/screen/files/screen-4.3.0-no-utempter.patch +++ b/app-misc/screen/files/screen-4.3.0-no-utempter.patch @@ -1,5 +1,5 @@ screen-4.3.0/configure.ac -+++ screen-4.3.0/configure.ac +--- a/configure.ac b/configure.ac @@ -878,11 +878,6 @@ #include #endif
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 6c9f05c7dce7cb0b4d6e9c1fde52653a4b33db5a Author: Jeroen Roovers gentoo org> AuthorDate: Fri Jan 29 12:36:50 2016 + Commit: Jeroen Roovers gentoo org> CommitDate: Fri Jan 29 12:37:08 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c9f05c7 app-misc/screen: Drop obsolete patch. Package-Manager: portage-2.2.27 app-misc/screen/files/screen--bool_visual_bell.patch | 11 --- app-misc/screen/screen-.ebuild | 3 --- 2 files changed, 14 deletions(-) diff --git a/app-misc/screen/files/screen--bool_visual_bell.patch b/app-misc/screen/files/screen--bool_visual_bell.patch deleted file mode 100644 index e316a62..000 --- a/app-misc/screen/files/screen--bool_visual_bell.patch +++ /dev/null @@ -1,11 +0,0 @@ a/src/telnet.c -+++ b/src/telnet.c -@@ -41,7 +41,7 @@ - - extern Window *fore; - extern Layer *flayer; --extern int visual_bell; -+extern bool visual_bell; - extern char screenterm[]; - extern int af; - diff --git a/app-misc/screen/screen-.ebuild b/app-misc/screen/screen-.ebuild index 1c5906a..3038ad6 100644 --- a/app-misc/screen/screen-.ebuild +++ b/app-misc/screen/screen-.ebuild @@ -36,9 +36,6 @@ src_prepare() { # Don't use utempter even if it is found on the system epatch "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch - # visual_bell is no longer an int - epatch "${FILESDIR}"/${PN}--bool_visual_bell.patch - # 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
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/
commit: 6827e6f10c986364122cc0aa9bc79a71fc18a079 Author: Jeroen Roovers gentoo org> AuthorDate: Sat Jan 23 12:44:16 2016 + Commit: Jeroen Roovers gentoo org> CommitDate: Sat Jan 23 12:44:16 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6827e6f1 app-misc/screen: Rename patch to reflect version. Package-Manager: portage-2.2.27 ...-4.3.1-bool_visual_bell.patch => screen--bool_visual_bell.patch} | 0 app-misc/screen/screen-.ebuild | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/app-misc/screen/files/screen-4.3.1-bool_visual_bell.patch b/app-misc/screen/files/screen--bool_visual_bell.patch similarity index 100% rename from app-misc/screen/files/screen-4.3.1-bool_visual_bell.patch rename to app-misc/screen/files/screen--bool_visual_bell.patch diff --git a/app-misc/screen/screen-.ebuild b/app-misc/screen/screen-.ebuild index 9118c6f..1c5906a 100644 --- a/app-misc/screen/screen-.ebuild +++ b/app-misc/screen/screen-.ebuild @@ -37,7 +37,7 @@ src_prepare() { epatch "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch # visual_bell is no longer an int - epatch "${FILESDIR}"/${PN}-4.3.1-bool_visual_bell.patch + epatch "${FILESDIR}"/${PN}--bool_visual_bell.patch # sched.h is a system header and causes problems with some C libraries mv sched.h _sched.h || die
[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/
commit: 014b2841b0b9f052436c5f67de3a1df59a1c232b Author: Jeroen Roovers gentoo org> AuthorDate: Wed Sep 16 05:34:59 2015 + Commit: Jeroen Roovers gentoo org> CommitDate: Wed Sep 16 05:34:59 2015 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=014b2841 app-misc/screen: Clean up patch. Package-Manager: portage-2.2.20.1 app-misc/screen/files/screen-4.3.1-ansi.c.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app-misc/screen/files/screen-4.3.1-ansi.c.patch b/app-misc/screen/files/screen-4.3.1-ansi.c.patch index 8dca52d..24a1167 100644 --- a/app-misc/screen/files/screen-4.3.1-ansi.c.patch +++ b/app-misc/screen/files/screen-4.3.1-ansi.c.patch @@ -1,5 +1,5 @@ ansi.c.orig2015-09-15 22:55:48.274486000 + -+++ ansi.c 2015-09-15 22:59:14.368486000 + +--- a/ansi.c b/ansi.c @@ -2502,13 +2502,13 @@ return; if (n > 0)