[gentoo-commits] repo/gentoo:master commit in: app-misc/screen/files/, app-misc/screen/

2023-10-16 Thread Sam James
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/

2023-04-10 Thread Sven Wegener
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/

2022-12-21 Thread Sam James
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/

2022-09-10 Thread Sam James
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/

2022-09-09 Thread Sam James
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/

2022-02-18 Thread Sven Wegener
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/

2021-02-24 Thread Sven Wegener
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/

2020-02-27 Thread Lars Wendler
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/

2018-01-04 Thread Sven Wegener
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/

2018-01-04 Thread Sven Wegener
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/

2017-03-13 Thread Lars Wendler
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/

2017-01-18 Thread Jeroen Roovers
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/

2016-01-29 Thread Jeroen Roovers
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/

2016-01-23 Thread Jeroen Roovers
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/

2015-09-15 Thread Jeroen Roovers
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)