diff options
Diffstat (limited to 'app-misc/screen')
-rw-r--r-- | app-misc/screen/Manifest | 1 | ||||
-rw-r--r-- | app-misc/screen/files/screen-CVE-2021-26937.patch | 61 | ||||
-rw-r--r-- | app-misc/screen/screen-4.8.0-r3.ebuild | 149 | ||||
-rw-r--r-- | app-misc/screen/screen-4.9.0.ebuild | 145 |
4 files changed, 0 insertions, 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..000000000000 --- 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; - {0x30000, 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..000000000000 --- 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}" != 9999 ]] ; 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? ( 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 "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ - doc/screen.1 || die - - if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then - sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die - fi - - # disable musl dummy headers for utmp[x] - use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" - - # reconfigure - eautoreconf -} - -src_configure() { - append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" - - if [[ ${CHOST} == *-solaris* ]] ; then - # enable msg_header by upping the feature standard compatible - # with c99 mode - append-cppflags -D_XOPEN_SOURCE=600 - fi - - use nethack || append-cppflags "-DNONETHACK" - use debug && append-cppflags "-DDEBUG" - - local myeconfargs=( - --with-socket-dir="${EPREFIX}/tmp/${PN}" - --with-sys-screenrc="${EPREFIX}/etc/screenrc" - --with-pty-mode=0620 - --with-pty-group=5 - --enable-rxvt_osc - --enable-telnet - --enable-colors256 - $(use_enable pam) - ) - econf "${myeconfargs[@]}" -} - -src_compile() { - LC_ALL=POSIX emake comm.h term.h - emake osdef.h - - emake -C doc screen.info - default -} - -src_install() { - local DOCS=( - README ChangeLog INSTALL TODO NEWS* patchlevel.h - doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} - ) - - emake DESTDIR="${D}" SCREEN="${P}" install - - local tmpfiles_perms tmpfiles_group - - if use multiuser || use prefix ; then - fperms 4755 /usr/bin/${P} - tmpfiles_perms="0755" - tmpfiles_group="root" - else - fowners root:utmp /usr/bin/${P} - fperms 2755 /usr/bin/${P} - tmpfiles_perms="0775" - tmpfiles_group="utmp" - fi - - newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" - - insinto /usr/share/${PN} - doins terminfo/{screencap,screeninfo.src} - - insinto /etc - doins "${FILESDIR}"/screenrc - - if use pam; then - pamd_mimic_system screen auth - fi - - dodoc "${DOCS[@]}" -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]] - then - elog "Some dangerous key bindings have been removed or changed to more safe values." - elog "We enable some xterm hacks in our default screenrc, which might break some" - elog "applications. Please check /etc/screenrc for information on these changes." - fi - - tmpfiles_process screen.conf - - ewarn "This revision changes the screen socket location to ${EROOT}/tmp/${PN}" -} diff --git a/app-misc/screen/screen-4.9.0.ebuild b/app-misc/screen/screen-4.9.0.ebuild deleted file mode 100644 index ea3531d913a6..000000000000 --- a/app-misc/screen/screen-4.9.0.ebuild +++ /dev/null @@ -1,145 +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 - -DESCRIPTION="screen manager with VT100/ANSI terminal emulation" -HOMEPAGE="https://www.gnu.org/software/screen/" - -if [[ ${PV} != 9999 ]] ; then - SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~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 -) - -src_prepare() { - default - - # sched.h is a system header and causes problems with some C libraries - mv sched.h _sched.h || die - sed -i '/include/ s:sched.h:_sched.h:' screen.h || die - - # Fix manpage - sed -i \ - -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ - -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ - -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ - -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ - -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ - doc/screen.1 || die - - if [[ ${CHOST} == *-darwin* ]] || use elibc_musl; then - sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die - fi - - # disable musl dummy headers for utmp[x] - use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" - - # reconfigure - eautoreconf -} - -src_configure() { - append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" - - if [[ ${CHOST} == *-solaris* ]]; then - # enable msg_header by upping the feature standard compatible - # with c99 mode - append-cppflags -D_XOPEN_SOURCE=600 - fi - - use nethack || append-cppflags "-DNONETHACK" - use debug && append-cppflags "-DDEBUG" - - local myeconfargs=( - --with-socket-dir="${EPREFIX}/tmp/${PN}" - --with-sys-screenrc="${EPREFIX}/etc/screenrc" - --with-pty-mode=0620 - --with-pty-group=5 - --enable-rxvt_osc - --enable-telnet - --enable-colors256 - $(use_enable pam) - ) - econf "${myeconfargs[@]}" -} - -src_compile() { - LC_ALL=POSIX emake comm.h term.h - emake osdef.h - - emake -C doc screen.info - default -} - -src_install() { - local DOCS=( - README ChangeLog INSTALL TODO NEWS* patchlevel.h - doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} - ) - - emake DESTDIR="${D}" SCREEN="${P}" install - - local tmpfiles_perms tmpfiles_group - - if use multiuser || use prefix ; then - fperms 4755 /usr/bin/${P} - tmpfiles_perms="0755" - tmpfiles_group="root" - else - fowners root:utmp /usr/bin/${P} - fperms 2755 /usr/bin/${P} - tmpfiles_perms="0775" - tmpfiles_group="utmp" - fi - - newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" - - insinto /usr/share/${PN} - doins terminfo/{screencap,screeninfo.src} - - insinto /etc - doins "${FILESDIR}"/screenrc - - if use pam; then - pamd_mimic_system screen auth - fi - - dodoc "${DOCS[@]}" -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then - elog "Some dangerous key bindings have been removed or changed to more safe values." - elog "We enable some xterm hacks in our default screenrc, which might break some" - elog "applications. Please check /etc/screenrc for information on these changes." - fi - - tmpfiles_process screen.conf - - ewarn "This revision changes the screen socket location to ${EROOT}/tmp/${PN}" -} |