summaryrefslogtreecommitdiff
path: root/net-misc
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/Manifest.gzbin54282 -> 54273 bytes
-rw-r--r--net-misc/gallery-dl/Manifest2
-rw-r--r--net-misc/gallery-dl/gallery-dl-1.24.2.ebuild2
-rw-r--r--net-misc/netifrc/Manifest4
-rw-r--r--net-misc/netifrc/netifrc-0.7.3-r1.ebuild26
-rw-r--r--net-misc/netifrc/netifrc-9999.ebuild30
-rw-r--r--net-misc/openssh/Manifest5
-rw-r--r--net-misc/openssh/openssh-9.2_p1.ebuild514
8 files changed, 553 insertions, 30 deletions
diff --git a/net-misc/Manifest.gz b/net-misc/Manifest.gz
index e2c6c4a46e29..32bb4121306f 100644
--- a/net-misc/Manifest.gz
+++ b/net-misc/Manifest.gz
Binary files differ
diff --git a/net-misc/gallery-dl/Manifest b/net-misc/gallery-dl/Manifest
index 8527c367e20c..7773d054e448 100644
--- a/net-misc/gallery-dl/Manifest
+++ b/net-misc/gallery-dl/Manifest
@@ -6,7 +6,7 @@ DIST gallery-dl-1.24.4.gh.tar.gz 518668 BLAKE2B 73ef2894d1355716001a5b82c43547d8
DIST gallery-dl-1.24.5.gh.tar.gz 525743 BLAKE2B 6b8611242bbb6a6dc76508ec452c3618fe75d6ffdc3185b5f246e5568f32861647649d63e9479b187f086aeb4ea4f567567fc387bbe1df0cb4994a00d4ba76f1 SHA512 648707e5be450501aa66f34b89aae1cf7b80c93bee5105c9eeae4fa19e34df41b231066a23113e963119105050e6aed8e654d10d107086ab5a815095dcf562c2
EBUILD gallery-dl-1.23.5.ebuild 1003 BLAKE2B c6b10ac3713fb5001c2dd2cee91b2d53995078bdc3bac0bee2906453c42ff771afb7c408f657553064260d218e41f559c0c1040817d73de901d396db14b414cc SHA512 51d1b42b99710b65c171e4c0cb917b1247cdc8b56901d42ee3f9958a4d717818f4de8e21831a6c7c2e9ac2944cc50c05a78ca6042535abd64d887b3c624ac7c2
EBUILD gallery-dl-1.24.1.ebuild 1003 BLAKE2B c6b10ac3713fb5001c2dd2cee91b2d53995078bdc3bac0bee2906453c42ff771afb7c408f657553064260d218e41f559c0c1040817d73de901d396db14b414cc SHA512 51d1b42b99710b65c171e4c0cb917b1247cdc8b56901d42ee3f9958a4d717818f4de8e21831a6c7c2e9ac2944cc50c05a78ca6042535abd64d887b3c624ac7c2
-EBUILD gallery-dl-1.24.2.ebuild 1004 BLAKE2B cbb7dc2fa2054c00c1cafcf4f8be9311c4ae16a55bc1a91698b1bcc90aeeb363eeb3ffe66fc9ca2f8fd78a790210422e86124dda83ebe5234e7e6088f08ba130 SHA512 ad62e46159bbbed9851bcdb976d64da3601e9fa9757f8a16eeea0b0c9f963cf31aab5630c8ed7dc5d64daf9e59c068250ee0ad526bce9306fcb72ec34c1dbc01
+EBUILD gallery-dl-1.24.2.ebuild 1003 BLAKE2B c6b10ac3713fb5001c2dd2cee91b2d53995078bdc3bac0bee2906453c42ff771afb7c408f657553064260d218e41f559c0c1040817d73de901d396db14b414cc SHA512 51d1b42b99710b65c171e4c0cb917b1247cdc8b56901d42ee3f9958a4d717818f4de8e21831a6c7c2e9ac2944cc50c05a78ca6042535abd64d887b3c624ac7c2
EBUILD gallery-dl-1.24.3.ebuild 1010 BLAKE2B 850bcffc0db807934fdbeb76a4f9227a2114ca2fb51f2b5303bc48bce23e0dccbfb3e3a7eae0e803c94b033aa98fa9a4491726bd5d2f090213007ff502435fe1 SHA512 dcc72fa9e34ba9898083bae3406860a3d6449b95a436886e1bb552724cdddb24cf6cb78bfc427ff88c49df3e3596328cbf42030a327fde84dc94b2ca30cee354
EBUILD gallery-dl-1.24.4.ebuild 1010 BLAKE2B 850bcffc0db807934fdbeb76a4f9227a2114ca2fb51f2b5303bc48bce23e0dccbfb3e3a7eae0e803c94b033aa98fa9a4491726bd5d2f090213007ff502435fe1 SHA512 dcc72fa9e34ba9898083bae3406860a3d6449b95a436886e1bb552724cdddb24cf6cb78bfc427ff88c49df3e3596328cbf42030a327fde84dc94b2ca30cee354
EBUILD gallery-dl-1.24.5.ebuild 1010 BLAKE2B 850bcffc0db807934fdbeb76a4f9227a2114ca2fb51f2b5303bc48bce23e0dccbfb3e3a7eae0e803c94b033aa98fa9a4491726bd5d2f090213007ff502435fe1 SHA512 dcc72fa9e34ba9898083bae3406860a3d6449b95a436886e1bb552724cdddb24cf6cb78bfc427ff88c49df3e3596328cbf42030a327fde84dc94b2ca30cee354
diff --git a/net-misc/gallery-dl/gallery-dl-1.24.2.ebuild b/net-misc/gallery-dl/gallery-dl-1.24.2.ebuild
index f0216d56b30a..f6cab0159f71 100644
--- a/net-misc/gallery-dl/gallery-dl-1.24.2.ebuild
+++ b/net-misc/gallery-dl/gallery-dl-1.24.2.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/mikf/${PN}.git"
else
SRC_URI="https://github.com/mikf/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
- KEYWORDS="amd64 arm arm64 hppa ~ppc ppc64 ~riscv x86"
+ KEYWORDS="amd64 arm arm64 hppa ppc ppc64 ~riscv x86"
fi
LICENSE="GPL-2"
diff --git a/net-misc/netifrc/Manifest b/net-misc/netifrc/Manifest
index e09c940ce0ac..337f71c5fac8 100644
--- a/net-misc/netifrc/Manifest
+++ b/net-misc/netifrc/Manifest
@@ -1,5 +1,5 @@
DIST netifrc-0.7.3.tar.gz 84770 BLAKE2B 075440bfd81e4dedd406d9555a18f530b07a47f9268130ebcca6d43d35e9cc5f01105a3eb0ddc084a16e17912aa10e378833b1eef1defd2fc6b22f817cd220bd SHA512 a82ac6835c15763becb5845a8c8d90dfd8d6c289ea5e00b0d7ae332d3e7ad6797f0fdcbf27bb9f44ff345c98884cdfa13210c76089585b8dd9970ded5f6236d8
-EBUILD netifrc-0.7.3-r1.ebuild 2126 BLAKE2B 0e4c4c4d3cb75346129f3b80f3507cb7faad3c7161cc91ec18394089ba2fd8a8b5a73a3b87a10d5cae3119ba28c4277c5449122acb88cbca176c49155d72a1a2 SHA512 960cb238f765d6e8cd92af43acf655883488d4005020fed0b309d80d39b2361a33e04793d46a84c8659b0cd2df7707a45ed4bcb3c8b71324d520f107644bbc19
+EBUILD netifrc-0.7.3-r1.ebuild 2078 BLAKE2B 097b16de98bc6d322cd913c3ec3cc34e6def14143488661b838504d79adf05f48115758c53cc75da3a3c3bb67671a7962ba4e98b95f95e632b1b948e96236fff SHA512 5fec8bff2cdcbb659729bdaec8122ef2fd781763a0216de5a775dc0b40b6930dfeceb0cb86d2aa3b93388b4383b890680b04b0f5869cbbe929d228ced0c2dfac
EBUILD netifrc-0.7.3.ebuild 2059 BLAKE2B 04bce3c3cdf9b43384e6918de8e91b59ee43fa74a23715c409bff93a7861b968225e604d40a412cb20440d0f3afaa53ea750eeded1a4b674074ee2e306da9ed5 SHA512 c907ae80e8b9a4552b2f5129efe0133ea48341584cae701acc3b37f3a172936413a0a6f9bb93e04b98139590230373121a0bd24cdfd5e4a3dddc7e64bd87fe5f
-EBUILD netifrc-9999.ebuild 2060 BLAKE2B 1d366d74654ce50998e446ad389b0c363b5295422f5d1a1d18634b904d1ebefb7e0ab4b793c6589d3dcfdcaf900d103f12afd373b9fcb1a805f8498eb55a3282 SHA512 3af84d8a1c1e7a031f376f16f4fd874dbe5c43431cb1164d86f81b4b444ca989fbb66209ccf105a59ee0b3a65697d6f386cb115bbc1699c205fa4a01f11f96ef
+EBUILD netifrc-9999.ebuild 2012 BLAKE2B bb63340644d173eb42992fdde37ed654285465ca1a938478515c052173a584350536d20e3dc038e14c09f40570947f8c1fa880916bba2b2163dc83b07866ce0b SHA512 083befaa94a2bf24c769ed55d74b49387576652d087be062e7a5af6094cf15183344123c94f9944b0acc67384d0c7e21a38b75a021ed98819f397ded0a1d2b76
MISC metadata.xml 459 BLAKE2B 2f21ebec95bd3cbb5e031d3b75255cd1238c8102aec86f24a308802da200243303cb9dc055e539c6fc9b4b466813931fbd8ef90812391bda0612a69b1d09f491 SHA512 4b96b583ea7c9e3fe9b1e0a6023d5e32c640ebd6d532e98ad337952c9d083be5049c03ee8e3190cd9ebe9f2a7401a5cb23027ba903b328ea032ad0197bf47c47
diff --git a/net-misc/netifrc/netifrc-0.7.3-r1.ebuild b/net-misc/netifrc/netifrc-0.7.3-r1.ebuild
index 33d349ea52b6..0f04017a43cb 100644
--- a/net-misc/netifrc/netifrc-0.7.3-r1.ebuild
+++ b/net-misc/netifrc/netifrc-0.7.3-r1.ebuild
@@ -21,10 +21,8 @@ LICENSE="BSD-2"
SLOT="0"
IUSE="+dhcp"
-DEPEND="!<sys-fs/udev-172"
RDEPEND="sys-apps/gentoo-functions
>=sys-apps/openrc-0.15
- !<sys-fs/udev-init-scripts-27
dhcp? ( || ( net-misc/dhcpcd net-misc/dhcp[client] ) )"
BDEPEND="kernel_linux? ( virtual/pkgconfig )"
@@ -40,25 +38,29 @@ src_prepare() {
}
src_compile() {
- MAKE_ARGS="${MAKE_ARGS}
- UDEVDIR=${EPREFIX}$(get_udevdir)
- LIBEXECDIR=${EPREFIX}/lib/${PN} PF=${PF}"
+ MAKE_ARGS=(
+ PREFIX="${EPREFIX}"
+ UPREFIX="${EPREFIX}/usr"
+ UDEVDIR="${EPREFIX}$(get_udevdir)"
+ LIBEXECDIR="${EPREFIX}/lib/${PN}"
+ PF="${PF}"
+ )
- use prefix && MAKE_ARGS+=" MKPREFIX=yes PREFIX=${EPREFIX}"
-
- emake ${MAKE_ARGS} all
+ emake "${MAKE_ARGS[@]}" all
}
src_install() {
- emake ${MAKE_ARGS} DESTDIR="${D}" install
+ emake "${MAKE_ARGS[@]}" DESTDIR="${D}" install
dodoc README CREDITS FEATURE-REMOVAL-SCHEDULE STYLE TODO
# Install the service file
- LIBEXECDIR="${EPREFIX}/lib/${PN}"
- UNIT_DIR="$(systemd_get_systemunitdir)"
+ local LIBEXECDIR="${EPREFIX}/lib/${PN}"
sed "s:@LIBEXECDIR@:${LIBEXECDIR}:" "${S}/systemd/net_at.service.in" > "${T}/net_at.service" || die
systemd_newunit "${T}/net_at.service" 'net@.service'
- dosym "${UNIT_DIR#${EPREFIX}}/net@.service" "${UNIT_DIR#${EPREFIX}}/net@lo.service"
+
+ local UNIT_DIR="$(systemd_get_systemunitdir)"
+ UNIT_DIR="${UNIT_DIR#"${EPREFIX}"}"
+ dosym net@.service "${UNIT_DIR}/net@lo.service"
}
pkg_postinst() {
diff --git a/net-misc/netifrc/netifrc-9999.ebuild b/net-misc/netifrc/netifrc-9999.ebuild
index 31f53c53facc..b9264c7f7cf7 100644
--- a/net-misc/netifrc/netifrc-9999.ebuild
+++ b/net-misc/netifrc/netifrc-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -21,10 +21,8 @@ LICENSE="BSD-2"
SLOT="0"
IUSE=""
-DEPEND="!<sys-fs/udev-172"
RDEPEND="sys-apps/gentoo-functions
- >=sys-apps/openrc-0.15
- !<sys-fs/udev-init-scripts-27"
+ >=sys-apps/openrc-0.15"
BDEPEND="kernel_linux? ( virtual/pkgconfig )"
src_prepare() {
@@ -39,25 +37,29 @@ src_prepare() {
}
src_compile() {
- MAKE_ARGS="${MAKE_ARGS}
- UDEVDIR=${EPREFIX}$(get_udevdir)
- LIBEXECDIR=${EPREFIX}/lib/${PN} PF=${PF}"
+ MAKE_ARGS=(
+ PREFIX="${EPREFIX}"
+ UPREFIX="${EPREFIX}/usr"
+ UDEVDIR="${EPREFIX}$(get_udevdir)"
+ LIBEXECDIR="${EPREFIX}/lib/${PN}"
+ PF="${PF}"
+ )
- use prefix && MAKE_ARGS+=" MKPREFIX=yes PREFIX=${EPREFIX}"
-
- emake ${MAKE_ARGS} all
+ emake "${MAKE_ARGS[@]}" all
}
src_install() {
- emake ${MAKE_ARGS} DESTDIR="${D}" install
+ emake "${MAKE_ARGS[@]}" DESTDIR="${D}" install
dodoc README CREDITS FEATURE-REMOVAL-SCHEDULE STYLE TODO
# Install the service file
- LIBEXECDIR="${EPREFIX}/lib/${PN}"
- UNIT_DIR="$(systemd_get_systemunitdir)"
+ local LIBEXECDIR="${EPREFIX}/lib/${PN}"
sed "s:@LIBEXECDIR@:${LIBEXECDIR}:" "${S}/systemd/net_at.service.in" > "${T}/net_at.service" || die
systemd_newunit "${T}/net_at.service" 'net@.service'
- dosym "${UNIT_DIR#${EPREFIX}}/net@.service" "${UNIT_DIR#${EPREFIX}}/net@lo.service"
+
+ local UNIT_DIR="$(systemd_get_systemunitdir)"
+ UNIT_DIR="${UNIT_DIR#"${EPREFIX}"}"
+ dosym net@.service "${UNIT_DIR}/net@lo.service"
}
pkg_postinst() {
diff --git a/net-misc/openssh/Manifest b/net-misc/openssh/Manifest
index 8309e461b604..ec3c2c470c28 100644
--- a/net-misc/openssh/Manifest
+++ b/net-misc/openssh/Manifest
@@ -31,7 +31,12 @@ DIST openssh-9.1p1+x509-14.0.1.diff.gz 1236304 BLAKE2B 389e652a7cca4d7322d784e51
DIST openssh-9.1p1-sctp-1.2.patch.xz 6772 BLAKE2B 8393c1ca5f0df7e4d490cef5c38d50d45da83a9c3f650e9af15d95825f9e682a6aaf6a0e85fc1704d41d6567aec8f0b34e43b20652e0141008ccdbe91426dfac SHA512 6750394d0fb7b7f93a0e4f94204e53277cc341c5b2427130559e443557dbb95f2e85a71cfe8d40cfa17dd015b0f3880f79a1f868374e60e94e8385c9b45acec5
DIST openssh-9.1p1.tar.gz 1838747 BLAKE2B 287b6b1cc4858b27af88f4a4674670afff1fb5b99461892083393c53ef3747c5a0fcd90cba95d2c27465a919e00f7f42732c93af4f306665ba0393bbb7a534f5 SHA512 a1f02c407f6b621b1d0817d1a0c9a6839b67e416c84f3b76c63003b119035b24c19a1564b22691d1152e1d2d55f4dc7eb1af2d2318751e431a99c4efa77edc70
DIST openssh-9.1p1.tar.gz.asc 833 BLAKE2B 83efe3c705f6a02c25a9fc9bac2a4efd77470598d9e0fcb86dff2d265c58cffec1afecad3621769b2bd78ac25884f0ee20ae9b311e895db93e3bb552dffd6e74 SHA512 47dc7295f9694250bcbb86d7ca0830a47da4f3df7795bb05ebaf1590284ccce5317022c536bea1b09bd2fa4d8013295cc0de287ebe3f9dc605582077e9f11ddd
+DIST openssh-9.2_p1-hpn-15.2-glue.patch.xz 4172 BLAKE2B 7bec61008f02c07bf24112995066bcd434820354155eb022ffa550baa8f7be896d915423698427ec921473190eb8e83739d2ceff04f79967759fc82b74435dac SHA512 c669a70611479f4ee0f3ba8417afc052f0212cb2d338c524fb3bf6c52a1bf3ca78fe78ab04118de5aa472a10d30b95f084c3ed00a542a8b3d0f541f8ea3f26af
+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
EBUILD openssh-9.1_p1-r2.ebuild 17832 BLAKE2B 6d37ea764a10d477ecffacbaa263c032024433e11db68474db8613299072e9e4c3d511dbc49becd33a505f8ccee47d08cd01933cd6387f26cd529cecfa148988 SHA512 b82326fd6527132601e401c294d85dc9f728025867ed329c2b7b2a2ddbce9e7935caca29e5e8b1e3c45fe6bc65287e166d2af209f63bf58cee33187a5e2a787e
EBUILD openssh-9.1_p1-r3.ebuild 18562 BLAKE2B 8fd485e9a362653105f7eaededc3785b21e7e183ed555cc007adb936c3182721d68a637b10fb83a655ccc3bb82dc22a06301457a25a699ddf20e670bfe053cc4 SHA512 81f8748b45b019e7c1025efa6d5b7b5b22bd37792915206c0dc262db8befdfb143d072de10c9bb8fa0002e09ad0309e740598e9bb8d91f830797b571fa86d269
EBUILD openssh-9.1_p1.ebuild 17810 BLAKE2B 302fca36aa0f354186744a3220f430e61c3f2ca1f3dda7de7c98f47e6a476715aee1a023451f27cfb1bb07ee50ec1bbc28a05e8f70c2937d391519b9a8423725 SHA512 871fc233d0532c5b84a171a46e3a9ccd5888833145413547e5d8c7bfc0a761280446c61440103dd132e2bd2f73cb6f35c0f90ae41a4975e3d9c2fd506ba0de29
+EBUILD openssh-9.2_p1.ebuild 17834 BLAKE2B c1a4f5e033eeda367cb92461a7647c8006c61f5795ad89b120505d528cfe2a857d9c28b9c1100b732b48dcd9c018fb3ff389522385aa6dd8cf2b589fcfb97aef SHA512 8e14c5dc1c239eb56a38a071fa7b215e423b7b5b884557287785642b0b71f41377013f8298bffe03d8d24317b414035004f42135c760e1d2f9e2759a76c76093
MISC metadata.xml 1957 BLAKE2B f5921abe3735fc6b8f8c6e88f3c3c11201c32ac91f7426150a51619b430f8c15c2afb0a9dcb9b3b5099fe7e5f193a05514064029392df6d0815a7fb67c2b96cf SHA512 6189845b640943147020d4a0fe04be66f58433809edded6fe98824b51c704faef9c3fc4c0d7a604391afcfcee62c0a47e25d36024b9145c4f1e332fe27db7f0a
diff --git a/net-misc/openssh/openssh-9.2_p1.ebuild b/net-misc/openssh/openssh-9.2_p1.ebuild
new file mode 100644
index 000000000000..9fa1599bd620
--- /dev/null
+++ b/net-misc/openssh/openssh-9.2_p1.ebuild
@@ -0,0 +1,514 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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"
+
+SCTP_VER="1.2"
+SCTP_PATCH="${PARCH}-sctp-${SCTP_VER}.patch.xz"
+
+X509_VER="14.0.1"
+#X509_PATCH="${PARCH}+x509-${X509_VER}.diff.gz"
+X509_GLUE_PATCH="${P}-X509-glue-${X509_VER}.patch"
+X509_HPN_GLUE_PATCH="${PN}-9.1_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-SSH%%20${HPN_VER/./v}%%20${HPN_PV/_P/p}/%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
+ #"${FILESDIR}/${PN}-9.1_p1-build-tests.patch"
+)
+
+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
+
+ sed -i \
+ -e "/#UseLogin no/d" \
+ "${S}"/sshd_config || die "Failed to remove removed UseLogin option (sshd_config)"
+
+ 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 PATH reset, trust what portage gives us #254615
+ -e 's:^PATH=/:#PATH=/:'
+ # 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.{service,socket}
+ systemd_newunit "${FILESDIR}"/sshd_at.service '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
+ 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
+}