commit:     781d6a979c5c181587b6289ef56c2eec627e43bf
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat May  6 15:08:02 2023 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat May  6 15:08:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=781d6a97

net-misc/openssh: drop 9.2_p1-r2

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 net-misc/openssh/Manifest                          |   7 -
 ...mget-shmat-shmdt-in-preauth-privsep-child.patch |  31 --
 net-misc/openssh/openssh-9.2_p1-r2.ebuild          | 517 ---------------------
 3 files changed, 555 deletions(-)

diff --git a/net-misc/openssh/Manifest b/net-misc/openssh/Manifest
index 5bde55aac9be..680eb4cd062e 100644
--- a/net-misc/openssh/Manifest
+++ b/net-misc/openssh/Manifest
@@ -1,13 +1,6 @@
 DIST openssh-8_5_P1-hpn-AES-CTR-15.2.diff 30096 BLAKE2B 
f0c020dd2403806c79d4c37a019996d275655b04997301e247f5c4dd7fad35d12b3b7c25afb1b078d915ef2a4ae02f736f0aec9ba2a8c56a405d7ca303bcadf7
 SHA512 
4c2dbf99a9b5953fdb955f700272bbaeaa025f108a8860d2190197962b849f8385327af82c4d6a3a130a7fba35a74a8ec9437d642867601acb29817c49632a8f
 DIST openssh-8_5_P1-hpn-DynWinNoneSwitch-15.2.diff 51428 BLAKE2B 
370b88a7da7f148bf5a4d445f05cf593b486e9df53bba027e2e179726f534b68cf9d94edd6e53024e0b6ff5f20e568727bc9d26c94d0d415603602a80d3ad241
 SHA512 
2d8d887901164b33b2799ff3ec72e86a39ae4a1696e52bcee0872dbae7772fcc534351e6e7f87126ee71b164c74e9091350f14b782f4b242a09f09b4f50d047a
 DIST openssh-8_5_P1-hpn-PeakTput-15.2.diff 2429 BLAKE2B 
849bf3c313719ab7a25c75e82d5dc5ac98365a038b2a66fe58d01eae5b20c7777258b94b5830e799d6909e75c69753cda05a910f3bdab9606fb7d5efa68e05f1
 SHA512 
c4a56fab55fabd1d902d45f235b603708d43f969920e45c9a57e557dccfa9cade2ec61f26d1ace938f6f73e79f17b12f119b5aea9166cbda8e3435b910500914
-DIST openssh-9.2_p1-X509-glue-14.1.patch.xz 900 BLAKE2B 
1cfde24cdd636390bcd9b546da182b0848d637c366ff387f045e8d9158e94ff9577c0dff9d87a552208a56aac4ae8319bb17fd772719a7aa2cbc8baf2bfe59fc
 SHA512 
b3f87fb0c339ffe627b347b4cc56fc6a056e5e9a4f23481bb18fc55262e1de3f0394d2f7a85c4fa120f74616a5872cf6628118bcda6973dfa9baec8d7e0e65b1
-DIST openssh-9.2_p1-hpn-15.2-X509-14.1-glue.patch.xz 6040 BLAKE2B 
d032d1f03ab1bd310af055a452375e6b85ebe40f3d09effdfb07085981155b751c6fdc74a9ee10afe807c2cd10be3444baf712eb0b211bdaff4dc43dc4f65938
 SHA512 
696f5ee26eeef7a1d56c212eb8bf7c7a568ded2a576eddae92b98b9b3b6bd5bd66e0944b9328e93ec4d55d16f72215a13c25d27de81f75aaae8fdbe68e3df51e
-DIST openssh-9.2_p1-hpn-15.2-glue.patch.xz 4172 BLAKE2B 
7bec61008f02c07bf24112995066bcd434820354155eb022ffa550baa8f7be896d915423698427ec921473190eb8e83739d2ceff04f79967759fc82b74435dac
 SHA512 
c669a70611479f4ee0f3ba8417afc052f0212cb2d338c524fb3bf6c52a1bf3ca78fe78ab04118de5aa472a10d30b95f084c3ed00a542a8b3d0f541f8ea3f26af
-DIST openssh-9.2p1+x509-14.1.diff.gz 1210737 BLAKE2B 
6b1cb2392c3fdbc7627b44a055da7662c686786cddaefcdf63f33fa92c1d97a5fb9ff54d03b7aef700715baa44f4485ad2dd73f59aac5b19617597832e135773
 SHA512 
88ba0dfd6e7eddf06e47d27299ee900dd1a9dc24df706bde51231b290f666848935204281577a9e47267939e7ee852f7232caaccdae6ac3eb503e53c075e630d
-DIST openssh-9.2p1-sctp-1.2.patch.xz 6828 BLAKE2B 
8a57b85ce5d18dca34ef71b486f2f24bbc82f6bf263a4f162a1222d96ef2adc469cce62f368c9192512efaa8e1e2496a7bd8f79a11698bf0118eee07a703e6ef
 SHA512 
3713847ef7b280f8b74a1b493644152c948ce74e06c1d0bff52996647963ca156cbc845b4459bcdbd4745eb440e409af07af2f0b696c65950a8a6d7ddb46f6c8
-DIST openssh-9.2p1.tar.gz 1852380 BLAKE2B 
8d0b5e43cb42cba105a1fe303c447a2b85151cb33ec7ed47747d75c5a61d0f07f0ee4b1020b79c13eb8de4b451c5a844a8afc7ebbbea7ffeceafc3bf59cb8d21
 SHA512 
c4b79ef3a05b96bfc477ffb31f734635bffd5be213ab58e043111c3232dbe999ff24665fa1069518237cffa5126ded0dda8984e1b8f098f4f09b8c1dae20e604
-DIST openssh-9.2p1.tar.gz.asc 833 BLAKE2B 
36210757aaa4ee8e6bdf4cfbb5590e6c54a617817d1657ebb446e54530d01a9e9f5559408b3d424d5efdb4ba06f0c02755637f5480dc81f9b4e32963de91087a
 SHA512 
2a56f8946ed00fcd5a92935e090523d40b5c3747e25661d575b799b1825bf5e47a95eed5e7ed968fe042349c2c7d94d6b0e6bf2d9145b5c6ff5df2ca538d56e5
 DIST openssh-9.3_p1-X509-glue-14.1.1.patch.xz 936 BLAKE2B 
f1716ff7801a27aa2aad06f1cca2ca6988eef65fb0ddcbde483e5c9205506ca40b658f5c8c40b2625afb38ff9b56e40831eadcf751c8ee1c11f69ec559f3c147
 SHA512 
dace01bcf22b625cd00e18ce019b0be31b6f47f714845f3ebb98ebee41b4db0a769fa09cab63ea17536a7106ec90f2b15f87696ae49fa6f6e31bad94ae09719d
 DIST openssh-9.3_p1-hpn-15.2-X509-14.1.1-glue.patch.xz 6224 BLAKE2B 
47c7054648e8d795b0d9e563d8313242c917df8a3620a60cff2d77f9ae8482cec861244e0f1433f711922f0704b775b7183284960a3baa48a27b99979ad7ffa3
 SHA512 
728cf2586bcc9480afe71b5106e2286b925857a9e04dce79f744b36cbe3ec2844ac5b4a6bd4b64117f32ad1b04c0943b9d6f935eee826202871588ed9a167387
 DIST openssh-9.3_p1-hpn-15.2-glue.patch.xz 5044 BLAKE2B 
73205bd8f702612df7cb6f29e8b353df854428974dc20d5938033157da64418317f326ab8118893dc47173cd871dc7654a3e3ed601289744560becc98729cd3f
 SHA512 
343b77109158b9af5d8d57f4ac7968bce8277fa3b4dcaa19b76593620fbddbfa832bd76c0da52e12179fe5f391f9fef67e7af51b138ab8cc69a8a6471b6a3909

diff --git 
a/net-misc/openssh/files/openssh-8.0_p1-deny-shmget-shmat-shmdt-in-preauth-privsep-child.patch
 
b/net-misc/openssh/files/openssh-8.0_p1-deny-shmget-shmat-shmdt-in-preauth-privsep-child.patch
deleted file mode 100644
index fe3be2409e2a..000000000000
--- 
a/net-misc/openssh/files/openssh-8.0_p1-deny-shmget-shmat-shmdt-in-preauth-privsep-child.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 3ef92a657444f172b61f92d5da66d94fa8265602 Mon Sep 17 00:00:00 2001
-From: Lonnie Abelbeck <lon...@abelbeck.com>
-Date: Tue, 1 Oct 2019 09:05:09 -0500
-Subject: [PATCH] Deny (non-fatal) shmget/shmat/shmdt in preauth privsep child.
-
-New wait_random_seeded() function on OpenSSL 1.1.1d uses shmget, shmat, and 
shmdt
-in the preauth codepath, deny (non-fatal) in seccomp_filter sandbox.
----
- sandbox-seccomp-filter.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c
-index 840c5232b..39dc289e3 100644
---- a/sandbox-seccomp-filter.c
-+++ b/sandbox-seccomp-filter.c
-@@ -168,6 +168,15 @@ static const struct sock_filter preauth_insns[] = {
- #ifdef __NR_stat64
-       SC_DENY(__NR_stat64, EACCES),
- #endif
-+#ifdef __NR_shmget
-+      SC_DENY(__NR_shmget, EACCES),
-+#endif
-+#ifdef __NR_shmat
-+      SC_DENY(__NR_shmat, EACCES),
-+#endif
-+#ifdef __NR_shmdt
-+      SC_DENY(__NR_shmdt, EACCES),
-+#endif
- 
-       /* Syscalls to permit */
- #ifdef __NR_brk

diff --git a/net-misc/openssh/openssh-9.2_p1-r2.ebuild 
b/net-misc/openssh/openssh-9.2_p1-r2.ebuild
deleted file mode 100644
index 0a724fc1e142..000000000000
--- a/net-misc/openssh/openssh-9.2_p1-r2.ebuild
+++ /dev/null
@@ -1,517 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit user-info flag-o-matic autotools pam systemd toolchain-funcs verify-sig
-
-# Make it more portable between straight releases
-# and _p? releases.
-PARCH=${P/_}
-
-# PV to USE for HPN patches
-#HPN_PV="${PV^^}"
-HPN_PV="8.5_P1"
-
-HPN_VER="15.2"
-HPN_PATCHES=(
-       ${PN}-${HPN_PV/./_}-hpn-DynWinNoneSwitch-${HPN_VER}.diff
-       ${PN}-${HPN_PV/./_}-hpn-AES-CTR-${HPN_VER}.diff
-       ${PN}-${HPN_PV/./_}-hpn-PeakTput-${HPN_VER}.diff
-)
-HPN_GLUE_PATCH="${PN}-9.2_p1-hpn-${HPN_VER}-glue.patch"
-HPN_PATCH_DIR="HPN-SSH%%20${HPN_VER/./v}%%20${HPN_PV/_P/p}"
-
-SCTP_VER="1.2"
-SCTP_PATCH="${PARCH}-sctp-${SCTP_VER}.patch.xz"
-
-X509_VER="14.1"
-X509_PATCH="${PARCH}+x509-${X509_VER}.diff.gz"
-X509_GLUE_PATCH="${P}-X509-glue-${X509_VER}.patch"
-X509_HPN_GLUE_PATCH="${PN}-9.2_p1-hpn-${HPN_VER}-X509-${X509_VER}-glue.patch"
-
-DESCRIPTION="Port of OpenBSD's free SSH release"
-HOMEPAGE="https://www.openssh.com/";
-SRC_URI="mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz
-       ${SCTP_PATCH:+sctp? ( 
https://dev.gentoo.org/~chutzpah/dist/openssh/${SCTP_PATCH} )}
-       ${HPN_VER:+hpn? (
-               $(printf 
"mirror://sourceforge/project/hpnssh/Patches/${HPN_PATCH_DIR}/%s\n" 
"${HPN_PATCHES[@]}")
-               
https://dev.gentoo.org/~chutzpah/dist/openssh/${HPN_GLUE_PATCH}.xz
-       )}
-       ${X509_PATCH:+X509? (
-               https://roumenpetrov.info/openssh/x509-${X509_VER}/${X509_PATCH}
-               
https://dev.gentoo.org/~chutzpah/dist/openssh/${X509_GLUE_PATCH}.xz
-               ${HPN_VER:+hpn? ( 
https://dev.gentoo.org/~chutzpah/dist/openssh/${X509_HPN_GLUE_PATCH}.xz )}
-       )}
-       verify-sig? ( mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz.asc )
-"
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/openssh.org.asc
-S="${WORKDIR}/${PARCH}"
-
-LICENSE="BSD GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 
~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-# Probably want to drop ssl defaulting to on in a future version.
-IUSE="abi_mips_n32 audit debug hpn kerberos ldns libedit livecd pam +pie sctp 
security-key selinux +ssl static test X X509 xmss"
-
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="
-       hpn? ( ssl )
-       ldns? ( ssl )
-       pie? ( !static )
-       static? ( !kerberos !pam )
-       X509? ( !sctp ssl !xmss )
-       xmss? ( ssl  )
-       test? ( ssl )
-"
-
-# tests currently fail with XMSS
-REQUIRED_USE+="test? ( !xmss )"
-
-# Blocker on older gcc-config for bug #872416
-LIB_DEPEND="
-       !<sys-devel/gcc-config-2.6
-       audit? ( sys-process/audit[static-libs(+)] )
-       ldns? (
-               net-libs/ldns[static-libs(+)]
-               net-libs/ldns[ecdsa(+),ssl(+)]
-       )
-       libedit? ( dev-libs/libedit:=[static-libs(+)] )
-       sctp? ( net-misc/lksctp-tools[static-libs(+)] )
-       security-key? ( >=dev-libs/libfido2-1.5.0:=[static-libs(+)] )
-       selinux? ( >=sys-libs/libselinux-1.28[static-libs(+)] )
-       ssl? ( >=dev-libs/openssl-1.1.1l-r1:0=[static-libs(+)] )
-       virtual/libcrypt:=[static-libs(+)]
-       >=sys-libs/zlib-1.2.3:=[static-libs(+)]
-"
-RDEPEND="
-       acct-group/sshd
-       acct-user/sshd
-       !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
-       pam? ( sys-libs/pam )
-       kerberos? ( virtual/krb5 )
-"
-DEPEND="${RDEPEND}
-       virtual/os-headers
-       kernel_linux? ( !prefix-guest? ( >=sys-kernel/linux-headers-5.1 ) )
-       static? ( ${LIB_DEPEND} )
-"
-RDEPEND="${RDEPEND}
-       pam? ( >=sys-auth/pambase-20081028 )
-       !prefix? ( sys-apps/shadow )
-       X? ( x11-apps/xauth )
-"
-# Weird dep construct for newer gcc-config for bug #872416
-BDEPEND="
-       sys-devel/autoconf
-       virtual/pkgconfig
-       || (
-               >=sys-devel/gcc-config-2.6
-               >=sys-devel/clang-toolchain-symlinks-14-r1:14
-               >=sys-devel/clang-toolchain-symlinks-15-r1:15
-               >=sys-devel/clang-toolchain-symlinks-16-r1:*
-       )
-       verify-sig? ( sec-keys/openpgp-keys-openssh )
-"
-
-PATCHES=(
-       "${FILESDIR}/${PN}-7.9_p1-include-stdlib.patch"
-       "${FILESDIR}/${PN}-8.7_p1-GSSAPI-dns.patch" #165444 integrated into 
gsskex
-       "${FILESDIR}/${PN}-6.7_p1-openssl-ignore-status.patch"
-       "${FILESDIR}/${PN}-7.5_p1-disable-conch-interop-tests.patch"
-       "${FILESDIR}/${PN}-8.0_p1-fix-putty-tests.patch"
-       
"${FILESDIR}/${PN}-8.0_p1-deny-shmget-shmat-shmdt-in-preauth-privsep-child.patch"
-       "${FILESDIR}/${PN}-8.9_p1-allow-ppoll_time64.patch" #834019
-       "${FILESDIR}/${PN}-8.9_p1-gss-use-HOST_NAME_MAX.patch" #834044
-)
-
-pkg_pretend() {
-       # this sucks, but i'd rather have people unable to `emerge -u openssh`
-       # than not be able to log in to their server any more
-       local missing=()
-       check_feature() { use "${1}" && [[ -z ${!2} ]] && missing+=( "${1}" ); }
-       check_feature hpn HPN_VER
-       check_feature sctp SCTP_PATCH
-       check_feature X509 X509_PATCH
-       if [[ ${#missing[@]} -ne 0 ]] ; then
-               eerror "Sorry, but this version does not yet support features"
-               eerror "that you requested: ${missing[*]}"
-               eerror "Please mask ${PF} for now and check back later:"
-               eerror " # echo '=${CATEGORY}/${PF}' >> 
/etc/portage/package.mask"
-               die "Missing requested third party patch."
-       fi
-
-       # Make sure people who are using tcp wrappers are notified of its 
removal. #531156
-       if grep -qs '^ *sshd *:' "${EROOT}"/etc/hosts.{allow,deny} ; then
-               ewarn "Sorry, but openssh no longer supports tcp-wrappers, and 
it seems like"
-               ewarn "you're trying to use it.  Update your 
${EROOT}/etc/hosts.{allow,deny} please."
-       fi
-}
-
-src_unpack() {
-       default
-
-       # We don't have signatures for HPN, X509, so we have to write this 
ourselves
-       use verify-sig && verify-sig_verify_detached 
"${DISTDIR}"/${PARCH}.tar.gz{,.asc}
-}
-
-src_prepare() {
-       sed -i \
-               -e 
"/_PATH_XAUTH/s:/usr/X11R6/bin/xauth:${EPREFIX}/usr/bin/xauth:" \
-               pathnames.h || die
-
-       # don't break .ssh/authorized_keys2 for fun
-       sed -i '/^AuthorizedKeysFile/s:^:#:' sshd_config || die
-
-       eapply -- "${PATCHES[@]}"
-
-       [[ -d ${WORKDIR}/patches ]] && eapply "${WORKDIR}"/patches
-
-       local PATCHSET_VERSION_MACROS=()
-
-       if use X509 ; then
-               pushd "${WORKDIR}" &>/dev/null || die
-               eapply "${WORKDIR}/${X509_GLUE_PATCH}"
-               popd &>/dev/null || die
-
-               eapply "${WORKDIR}"/${X509_PATCH%.*}
-               eapply "${FILESDIR}/${PN}-9.0_p1-X509-uninitialized-delay.patch"
-
-               # We need to patch package version or any X.509 sshd will 
reject our ssh client
-               # with "userauth_pubkey: could not parse key: string is too 
large [preauth]"
-               # error
-               einfo "Patching package version for X.509 patch set ..."
-               sed -i \
-                       -e "s/^AC_INIT(\[OpenSSH\], 
\[Portable\]/AC_INIT([OpenSSH], [${X509_VER}]/" \
-                       "${S}"/configure.ac || die "Failed to patch package 
version for X.509 patch"
-
-               einfo "Patching version.h to expose X.509 patch set ..."
-               sed -i \
-                       -e "/^#define SSH_PORTABLE.*/a #define SSH_X509         
      \"-PKIXSSH-${X509_VER}\"" \
-                       "${S}"/version.h || die "Failed to sed-in X.509 patch 
version"
-               PATCHSET_VERSION_MACROS+=( 'SSH_X509' )
-       fi
-
-       if use sctp ; then
-               eapply "${WORKDIR}"/${SCTP_PATCH%.*}
-
-               einfo "Patching version.h to expose SCTP patch set ..."
-               sed -i \
-                       -e "/^#define SSH_PORTABLE/a #define SSH_SCTP        
\"-sctp-${SCTP_VER}\"" \
-                       "${S}"/version.h || die "Failed to sed-in SCTP patch 
version"
-               PATCHSET_VERSION_MACROS+=( 'SSH_SCTP' )
-
-               einfo "Disabling known failing test (cfgparse) caused by SCTP 
patch ..."
-               sed -i \
-                       -e "/\t\tcfgparse \\\/d" \
-                       "${S}"/regress/Makefile || die "Failed to disable known 
failing test (cfgparse) caused by SCTP patch"
-       fi
-
-       if use hpn ; then
-               local hpn_patchdir="${T}/${P}-hpn${HPN_VER}"
-               mkdir "${hpn_patchdir}" || die
-               cp $(printf -- "${DISTDIR}/%s\n" "${HPN_PATCHES[@]}") 
"${hpn_patchdir}" || die
-               pushd "${hpn_patchdir}" &>/dev/null || die
-               eapply "${WORKDIR}/${HPN_GLUE_PATCH}"
-               use X509 && eapply "${WORKDIR}/${X509_HPN_GLUE_PATCH}"
-               use sctp && eapply 
"${FILESDIR}"/${PN}-8.5_p1-hpn-${HPN_VER}-sctp-glue.patch
-               popd &>/dev/null || die
-
-               eapply "${hpn_patchdir}"
-
-               use X509 || eapply 
"${FILESDIR}/openssh-8.6_p1-hpn-version.patch"
-
-               einfo "Patching Makefile.in for HPN patch set ..."
-               sed -i \
-                       -e "/^LIBS=/ s/\$/ -lpthread/" \
-                       "${S}"/Makefile.in || die "Failed to patch Makefile.in"
-
-               einfo "Patching version.h to expose HPN patch set ..."
-               sed -i \
-                       -e "/^#define SSH_PORTABLE/a #define SSH_HPN         
\"-hpn${HPN_VER//./v}\"" \
-                       "${S}"/version.h || die "Failed to sed-in HPN patch 
version"
-               PATCHSET_VERSION_MACROS+=( 'SSH_HPN' )
-
-               if [[ -n "${HPN_DISABLE_MTAES}" ]] ; then
-                       einfo "Disabling known non-working MT AES cipher per 
default ..."
-
-                       cat > "${T}"/disable_mtaes.conf <<- EOF
-
-                       # HPN's Multi-Threaded AES CTR cipher is currently 
known to be broken
-                       # and therefore disabled per default.
-                       DisableMTAES yes
-                       EOF
-                       sed -i \
-                               -e "/^#HPNDisabled.*/r ${T}/disable_mtaes.conf" 
\
-                               "${S}"/sshd_config || die "Failed to disabled 
MT AES ciphers in sshd_config"
-
-                       sed -i \
-                               -e "/AcceptEnv.*_XXX_TEST$/a 
\\\tDisableMTAES\t\tyes" \
-                               "${S}"/regress/test-exec.sh || die "Failed to 
disable MT AES ciphers in test config"
-               fi
-       fi
-
-       if use X509 || use sctp || use hpn ; then
-               einfo "Patching sshconnect.c to use SSH_RELEASE in 
send_client_banner() ..."
-               sed -i \
-                       -e "s/PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, 
SSH_VERSION/PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE/" \
-                       "${S}"/sshconnect.c || die "Failed to patch 
send_client_banner() to use SSH_RELEASE (sshconnect.c)"
-
-               einfo "Patching sshd.c to use SSH_RELEASE in 
sshd_exchange_identification() ..."
-               sed -i \
-                       -e "s/PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, 
SSH_VERSION/PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE/" \
-                       "${S}"/sshd.c || die "Failed to patch 
sshd_exchange_identification() to use SSH_RELEASE (sshd.c)"
-
-               einfo "Patching version.h to add our patch sets to SSH_RELEASE 
..."
-               sed -i \
-                       -e "s/^#define SSH_RELEASE.*/#define SSH_RELEASE     
SSH_VERSION SSH_PORTABLE ${PATCHSET_VERSION_MACROS[*]}/" \
-                       "${S}"/version.h || die "Failed to patch SSH_RELEASE 
(version.h)"
-       fi
-
-       eapply_user #473004
-
-       # These tests are currently incompatible with PORTAGE_TMPDIR/sandbox
-       sed -e '/\t\tpercent \\/ d' \
-               -i regress/Makefile || die
-
-       tc-export PKG_CONFIG
-       local sed_args=(
-               -e "s:-lcrypto:$(${PKG_CONFIG} --libs openssl):"
-               # Disable fortify flags ... our gcc does this for us
-               -e 's:-D_FORTIFY_SOURCE=2::'
-       )
-
-       # The -ftrapv flag ICEs on hppa #505182
-       use hppa && sed_args+=(
-               -e '/CFLAGS/s:-ftrapv:-fdisable-this-test:'
-               -e '/OSSH_CHECK_CFLAG_LINK.*-ftrapv/d'
-       )
-       # _XOPEN_SOURCE causes header conflicts on Solaris
-       [[ ${CHOST} == *-solaris* ]] && sed_args+=(
-               -e 's/-D_XOPEN_SOURCE//'
-       )
-       sed -i "${sed_args[@]}" configure{.ac,} || die
-
-       eautoreconf
-}
-
-src_configure() {
-       addwrite /dev/ptmx
-
-       use debug && append-cppflags -DSANDBOX_SECCOMP_FILTER_DEBUG
-       use static && append-ldflags -static
-       use xmss && append-cflags -DWITH_XMSS
-
-       if [[ ${CHOST} == *-solaris* ]] ; then
-               # Solaris' glob.h doesn't have things like GLOB_TILDE, configure
-               # doesn't check for this, so force the replacement to be put in
-               # place
-               append-cppflags -DBROKEN_GLOB
-       fi
-
-       # use replacement, RPF_ECHO_ON doesn't exist here
-       [[ ${CHOST} == *-darwin* ]] && export ac_cv_func_readpassphrase=no
-
-       local myconf=(
-               --with-ldflags="${LDFLAGS}"
-               --disable-strip
-               --with-pid-dir="${EPREFIX}"$(usex kernel_linux '' '/var')/run
-               --sysconfdir="${EPREFIX}"/etc/ssh
-               --libexecdir="${EPREFIX}"/usr/$(get_libdir)/misc
-               --datadir="${EPREFIX}"/usr/share/openssh
-               --with-privsep-path="${EPREFIX}"/var/empty
-               --with-privsep-user=sshd
-               $(use_with audit audit linux)
-               $(use_with kerberos kerberos5 "${EPREFIX}"/usr)
-               # We apply the sctp patch conditionally, so can't pass 
--without-sctp
-               # unconditionally else we get unknown flag warnings.
-               $(use sctp && use_with sctp)
-               $(use_with ldns)
-               $(use_with libedit)
-               $(use_with pam)
-               $(use_with pie)
-               $(use_with selinux)
-               $(usex X509 '' "$(use_with security-key security-key-builtin)")
-               $(use_with ssl openssl)
-               $(use_with ssl ssl-engine)
-               $(use_with !elibc_Cygwin hardening) #659210
-       )
-
-       if use elibc_musl; then
-               # musl defines bogus values for UTMP_FILE and WTMP_FILE
-               # https://bugs.gentoo.org/753230
-               myconf+=( --disable-utmp --disable-wtmp )
-       fi
-
-       # Workaround for Clang 15 miscompilation with -fzero-call-used-regs=all
-       # bug #869839 (https://github.com/llvm/llvm-project/issues/57692)
-       tc-is-clang && myconf+=( --without-hardening )
-
-       econf "${myconf[@]}"
-}
-
-src_test() {
-       local tests=( compat-tests )
-       local shell=$(egetshell "${UID}")
-       if [[ ${shell} == */nologin ]] || [[ ${shell} == */false ]] ; then
-               ewarn "Running the full OpenSSH testsuite requires a usable 
shell for the 'portage'"
-               ewarn "user, so we will run a subset only."
-               tests+=( interop-tests )
-       else
-               tests+=( tests )
-       fi
-
-       local -x SUDO= SSH_SK_PROVIDER= TEST_SSH_UNSAFE_PERMISSIONS=1
-       mkdir -p "${HOME}"/.ssh || die
-       emake -j1 "${tests[@]}" </dev/null
-}
-
-# Gentoo tweaks to default config files.
-tweak_ssh_configs() {
-       local locale_vars=(
-               # These are language variables that POSIX defines.
-               # 
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_02
-               LANG LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY 
LC_NUMERIC LC_TIME
-
-               # These are the GNU extensions.
-               # 
https://www.gnu.org/software/autoconf/manual/html_node/Special-Shell-Variables.html
-               LANGUAGE LC_ADDRESS LC_IDENTIFICATION LC_MEASUREMENT LC_NAME 
LC_PAPER LC_TELEPHONE
-       )
-
-       # First the server config.
-       cat <<-EOF >> "${ED}"/etc/ssh/sshd_config
-
-       # Allow client to pass locale environment variables. #367017
-       AcceptEnv ${locale_vars[*]}
-
-       # Allow client to pass COLORTERM to match TERM. #658540
-       AcceptEnv COLORTERM
-       EOF
-
-       # Then the client config.
-       cat <<-EOF >> "${ED}"/etc/ssh/ssh_config
-
-       # Send locale environment variables. #367017
-       SendEnv ${locale_vars[*]}
-
-       # Send COLORTERM to match TERM. #658540
-       SendEnv COLORTERM
-       EOF
-
-       if use pam ; then
-               sed -i \
-                       -e "/^#UsePAM /s:.*:UsePAM yes:" \
-                       -e "/^#PasswordAuthentication 
/s:.*:PasswordAuthentication no:" \
-                       -e "/^#PrintMotd /s:.*:PrintMotd no:" \
-                       -e "/^#PrintLastLog /s:.*:PrintLastLog no:" \
-                       "${ED}"/etc/ssh/sshd_config || die
-       fi
-
-       if use livecd ; then
-               sed -i \
-                       -e '/^#PermitRootLogin/c# Allow root login with 
password on livecds.\nPermitRootLogin Yes' \
-                       "${ED}"/etc/ssh/sshd_config || die
-       fi
-}
-
-src_install() {
-       emake install-nokeys DESTDIR="${D}"
-       fperms 600 /etc/ssh/sshd_config
-       dobin contrib/ssh-copy-id
-       newinitd "${FILESDIR}"/sshd-r1.initd sshd
-       newconfd "${FILESDIR}"/sshd-r1.confd sshd
-
-       if use pam; then
-               newpamd "${FILESDIR}"/sshd.pam_include.2 sshd
-       fi
-
-       tweak_ssh_configs
-
-       doman contrib/ssh-copy-id.1
-       dodoc CREDITS OVERVIEW README* TODO sshd_config
-       use hpn && dodoc HPN-README
-       use X509 || dodoc ChangeLog
-
-       diropts -m 0700
-       dodir /etc/skel/.ssh
-       rmdir "${ED}"/var/empty || die
-
-       systemd_dounit "${FILESDIR}"/sshd.socket
-       systemd_newunit "${FILESDIR}"/sshd.service.1 sshd.service
-       systemd_newunit "${FILESDIR}"/sshd_at.service.1 'sshd@.service'
-}
-
-pkg_preinst() {
-       if ! use ssl && has_version "${CATEGORY}/${PN}[ssl]"; then
-               show_ssl_warning=1
-       fi
-}
-
-pkg_postinst() {
-       local old_ver
-       for old_ver in ${REPLACING_VERSIONS}; do
-               if ver_test "${old_ver}" -lt "5.8_p1"; then
-                       elog "Starting with openssh-5.8p1, the server will 
default to a newer key"
-                       elog "algorithm (ECDSA).  You are encouraged to 
manually update your stored"
-                       elog "keys list as servers update theirs.  See 
ssh-keyscan(1) for more info."
-               fi
-               if ver_test "${old_ver}" -lt "7.0_p1"; then
-                       elog "Starting with openssh-6.7, support for USE=tcpd 
has been dropped by upstream."
-                       elog "Make sure to update any configs that you might 
have.  Note that xinetd might"
-                       elog "be an alternative for you as it supports 
USE=tcpd."
-               fi
-               if ver_test "${old_ver}" -lt "7.1_p1"; then #557388 #555518
-                       elog "Starting with openssh-7.0, support for ssh-dss 
keys were disabled due to their"
-                       elog "weak sizes.  If you rely on these key types, you 
can re-enable the key types by"
-                       elog "adding to your sshd_config or ~/.ssh/config 
files:"
-                       elog "  PubkeyAcceptedKeyTypes=+ssh-dss"
-                       elog "You should however generate new keys using rsa or 
ed25519."
-
-                       elog "Starting with openssh-7.0, the default for 
PermitRootLogin changed from 'yes'"
-                       elog "to 'prohibit-password'.  That means password auth 
for root users no longer works"
-                       elog "out of the box.  If you need this, please update 
your sshd_config explicitly."
-               fi
-               if ver_test "${old_ver}" -lt "7.6_p1"; then
-                       elog "Starting with openssh-7.6p1, openssh upstream has 
removed ssh1 support entirely."
-                       elog "Furthermore, rsa keys with less than 1024 bits 
will be refused."
-               fi
-               if ver_test "${old_ver}" -lt "7.7_p1"; then
-                       elog "Starting with openssh-7.7p1, we no longer patch 
openssh to provide LDAP functionality."
-                       elog "Install sys-auth/ssh-ldap-pubkey and use 
OpenSSH's \"AuthorizedKeysCommand\" option"
-                       elog "if you need to authenticate against LDAP."
-                       elog "See 
https://wiki.gentoo.org/wiki/SSH/LDAP_migration for more details."
-               fi
-               if ver_test "${old_ver}" -lt "8.2_p1"; then
-                       ewarn "After upgrading to openssh-8.2p1 please restart 
sshd, otherwise you"
-                       ewarn "will not be able to establish new sessions. 
Restarting sshd over a ssh"
-                       ewarn "connection is generally safe."
-               fi
-               if ver_test "${old_ver}" -lt "9.2_p1-r1" && systemd_is_booted; 
then
-                       ewarn "From openssh-9.2_p1-r1 the supplied systemd unit 
file defaults to"
-                       ewarn "'Restart=on-failure', which causes the service 
to automatically restart if it"
-                       ewarn "terminates with an unclean exit code or signal. 
This feature is useful for most users,"
-                       ewarn "but it can increase the vulnerability of the 
system in the event of a future exploit."
-                       ewarn "If you have a web-facing setup or are concerned 
about security, it is recommended to"
-                       ewarn "set 'Restart=no' in your sshd unit file."
-               fi
-       done
-
-       if [[ -n ${show_ssl_warning} ]]; then
-               elog "Be aware that by disabling openssl support in openssh, 
the server and clients"
-               elog "no longer support dss/rsa/ecdsa keys.  You will need to 
generate ed25519 keys"
-               elog "and update all clients/servers that utilize them."
-       fi
-
-       if use hpn && [[ -n "${HPN_DISABLE_MTAES}" ]] ; then
-               elog ""
-               elog "HPN's multi-threaded AES CTR cipher is currently known to 
be broken"
-               elog "and therefore disabled at runtime per default."
-               elog "Make sure your sshd_config is up to date and contains"
-               elog ""
-               elog "  DisableMTAES yes"
-               elog ""
-               elog "Otherwise you maybe unable to connect to this sshd using 
any AES CTR cipher."
-               elog ""
-       fi
-}

Reply via email to