summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorzer0def2022-05-13 07:44:53 +0200
committerzer0def2022-05-13 07:44:53 +0200
commit728576f5e92dcae0010131bf757788f12760abcd (patch)
treed65eae684d0bd7af9fd47e3fc7442190d23207ae
parentaa7483e3fae0adf5cd105720ffc05ebcdc0df272 (diff)
downloadaur-728576f5e92dcae0010131bf757788f12760abcd.tar.gz
Added shim package maintaining behavior pre-HPN17v0
-rw-r--r--.SRCINFO28
-rw-r--r--PKGBUILD86
-rw-r--r--hpnsshd.service17
-rw-r--r--hpnsshd.socket10
-rw-r--r--hpnsshd@.service8
-rw-r--r--hpnsshdgenkeys.service17
-rw-r--r--sshd.service8
-rw-r--r--sshd.socket4
-rw-r--r--sshd@.service6
-rw-r--r--sshdgenkeys.service22
10 files changed, 166 insertions, 40 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ad62787ef532..035a34214b96 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = openssh-hpn
pkgdesc = A Secure SHell server/client fork with High Performance patches included
pkgver = 8.9p1.hpn17v0
- pkgrel = 1
+ pkgrel = 2
url = https://www.psc.edu/index.php/hpn-ssh/
install = openssh-hpn.install
arch = x86_64
@@ -25,9 +25,16 @@ pkgbase = openssh-hpn
backup = etc/ssh/ssh_config
backup = etc/ssh/sshd_config
backup = etc/pam.d/sshd
+ backup = etc/hpnssh/ssh_config
+ backup = etc/hpnssh/sshd_config
+ backup = etc/pam.d/hpnsshd
source = https://github.com/rapier1/openssh-portable/archive/hpn-8_9_P1.tar.gz
source = http://www.eworm.de/download/linux/openssh-tests-scp.patch
source = glibc-2.31.patch
+ source = hpnsshdgenkeys.service
+ source = hpnsshd@.service
+ source = hpnsshd.service
+ source = hpnsshd.socket
source = sshdgenkeys.service
source = sshd@.service
source = sshd.service
@@ -40,6 +47,10 @@ pkgbase = openssh-hpn
sha512sums = 6d7b6ad90f09fd6ab395b485c30921696b617318e6f6d587a18438f292a2c4c33f6d6150b19393e89c4c5c582b9632aea8b7b6aa220af29c084f5e5bfeade611
sha512sums = 3abe76d3ed971f4ef69013732f5be4cdfb8de0a12705b5d7190907a543c6d044bf064ff637f4511e4d95fbab58066ede8d0cce996d1adb1c2ec917be980f228a
sha512sums = 6ebf291ada773fcc73661b2065ce75f95718bc9c562d14323faf6802a4d45e42f49689a4a1fc470530fa183d4973468d9a5b18acf90f7ada8b008f0f61038d14
+ sha512sums = d976febf9118c7803765ab2c6634cdbc130bccb2f5b9995737d0c9b0346001f2299a47f1a552c867283fe9d6fd07cca71df3729d958dc137f51f285e867348de
+ sha512sums = f8e38835a46f24b4e49c674658a34ccdf2deff1cf2f87316886e9f3794579d8b56e80dac91a5309d6029b0196691b3512f62b957f10165b98e1452b8292c8f62
+ sha512sums = aaa3f0e9ee686b7208ef94e373007a57e5f62020339399d6abbbeba276acedb1868d62c0401c901fd021f9287b263347b699c0d4b65f503fa57bafef5f4b8829
+ sha512sums = ea1d31d84ca30fffa60b6eb06d1f532c75ff5a8acec893479cbe0f3669c62e5da9ee81be8549bae75d63e4b6fe69a4ffe6dfd4e3008e731e320d6da4bc4beae9
sha512sums = 298e47a21c337101974fa5237b3110aa3c7638b5fa53bd07661413236c8ed3212b431abaeffd875af6c9a72b4f8e1c8512e1e1960cbfff15bfee62b32d305fc3
b2sums = 867fc8e0c7d8c4f24982910c0c207c5afe6e082df83dbcd3c0ec2c9b439050e2289c626f6e59ef6ab12c8f65522c7e24949d6abb611037e943013eaf7144c905
b2sums = 1e6c8d39052bdc268c584488341e260a2695d4b9afabca41919710bb34833dd580ff1813c01b8ba91f2629273c8101ce0ed3b2749dabce054137b4ef37b2a548
@@ -48,6 +59,21 @@ pkgbase = openssh-hpn
b2sums = 0a4c47fa2e3e62edfeef4f7d1b94167f26d83ccadb94af6dc467785edd4e9a1c810b05e824abacb1088afc0fe3cc102ef14141fac1d9aac1497855cc8748cf9b
b2sums = 211234dd60995873e00952c29fcb77ee6f1e9519fda5abce0b1f3a26193f580ad0c948482fcc66769abf55e347f95a6e4ba2dde98257e6ddb97b6a18550aff5b
b2sums = 3935bed214408537fe436c6015377561d2429f467f32b6e391068b1a9ef06566de51fba06d4ece393d68d3ba9fdc13f39ecdbdcd543602d308bcb980fa568d51
+ b2sums = 1ff09abee75ef72397dc0e538b707083fead2491d4573b4e9208a4f08c11b227662bcae4086ab4dd0365422b8b4e0d4c865ba5dc744ee6574ab8605cf9667918
+ b2sums = f3fa2ca4016af09e62037424d40377c7270fad498ebe6822f867a3ff4b6ba9473c75d182c1b9ffb9c328086a9e3c99ab81eb396937ccc3f92f611c66712ab85d
+ b2sums = 0b2ec199c7d772d4cfa6db12a653963727b01efea764fe364bb9138c983c56d1a33cc5e002b7edfeff957118d162e0c53c8d1b038a2f643bca38821b0ee8c3f6
+ b2sums = 3d47ff65d0e69ec76e7390ab52c33a7ec39e403fc86dd9c0546b8a876ef69f44d60f4d833ac18c007b776a202eb33d08369165670857e718589c6f4f8a51a564
b2sums = 557d015bca7008ce824111f235da67b7e0051a693aaab666e97b78e753ed7928b72274af03d7fde12033986b733d5f996faf2a4feb6ecf53f39accae31334930
pkgname = openssh-hpn
+
+pkgname = openssh-hpn-shim
+ provides = openssh
+ conflicts = openssh
+ conflicts = openssh-hpn-git
+ backup = etc/ssh/ssh_config
+ backup = etc/ssh/sshd_config
+ backup = etc/pam.d/sshd
+ backup = etc/hpnssh/ssh_config
+ backup = etc/hpnssh/sshd_config
+ backup = etc/pam.d/hpnsshd
diff --git a/PKGBUILD b/PKGBUILD
index d1eebc308ecc..bbf31c70177c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -39,13 +39,17 @@
# This package should probably follow chutzpah@gentoo's patches in the future
-pkgname=openssh-hpn
+pkgbase=openssh-hpn
+pkgname=(
+ openssh-hpn
+ openssh-hpn-shim
+)
_openssh_ver=8.9p1
_hpn_ver=hpn17v0
-#_pkgver="`sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver}`_new"
-_pkgver="`sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver}`"
+#_pkgver="$(sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver})_new"
+_pkgver="$(sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver})"
pkgver="${_openssh_ver}.${_hpn_ver}"
-pkgrel=1
+pkgrel=2
pkgdesc='A Secure SHell server/client fork with High Performance patches included'
url='https://www.psc.edu/index.php/hpn-ssh/'
license=('custom:BSD')
@@ -55,11 +59,7 @@ makedepends=('git' 'libfido2')
optdepends=('xorg-xauth: X11 forwarding'
'x11-ssh-askpass: input passphrase in X'
'libfido2: FIDO/U2F support')
-#provides=('openssh')
-conflicts=(
- #'openssh'
- 'openssh-hpn-git'
-)
+conflicts=('openssh-hpn-git')
source=(
"https://github.com/rapier1/openssh-portable/archive/hpn-${_pkgver}.tar.gz"
'http://www.eworm.de/download/linux/openssh-tests-scp.patch'
@@ -67,14 +67,23 @@ source=(
#'hpn-banner.patch'
'glibc-2.31.patch'
#'hpn14v22-globals-cleanup.patch'
+ 'hpnsshdgenkeys.service'
+ 'hpnsshd@.service'
+ 'hpnsshd.service'
+ 'hpnsshd.socket'
'sshdgenkeys.service'
'sshd@.service'
'sshd.service'
'sshd.socket'
'sshd.pam')
-backup=('etc/ssh/ssh_config'
- 'etc/ssh/sshd_config'
- 'etc/pam.d/sshd')
+backup=(
+ 'etc/ssh/ssh_config'
+ 'etc/ssh/sshd_config'
+ 'etc/pam.d/sshd'
+ 'etc/hpnssh/ssh_config'
+ 'etc/hpnssh/sshd_config'
+ 'etc/pam.d/hpnsshd'
+)
sha512sums=(
'190e4261a76ce5b31f8cdc76bc149c3c240611410461dd400e41ca55f4be4d5675473f16edbd648eaeb6d373136b831d61a9ae9f59c4e38ef8ecde738fda7880'
@@ -87,6 +96,10 @@ sha512sums=(
'6d7b6ad90f09fd6ab395b485c30921696b617318e6f6d587a18438f292a2c4c33f6d6150b19393e89c4c5c582b9632aea8b7b6aa220af29c084f5e5bfeade611'
'3abe76d3ed971f4ef69013732f5be4cdfb8de0a12705b5d7190907a543c6d044bf064ff637f4511e4d95fbab58066ede8d0cce996d1adb1c2ec917be980f228a'
'6ebf291ada773fcc73661b2065ce75f95718bc9c562d14323faf6802a4d45e42f49689a4a1fc470530fa183d4973468d9a5b18acf90f7ada8b008f0f61038d14'
+ 'd976febf9118c7803765ab2c6634cdbc130bccb2f5b9995737d0c9b0346001f2299a47f1a552c867283fe9d6fd07cca71df3729d958dc137f51f285e867348de'
+ 'f8e38835a46f24b4e49c674658a34ccdf2deff1cf2f87316886e9f3794579d8b56e80dac91a5309d6029b0196691b3512f62b957f10165b98e1452b8292c8f62'
+ 'aaa3f0e9ee686b7208ef94e373007a57e5f62020339399d6abbbeba276acedb1868d62c0401c901fd021f9287b263347b699c0d4b65f503fa57bafef5f4b8829'
+ 'ea1d31d84ca30fffa60b6eb06d1f532c75ff5a8acec893479cbe0f3669c62e5da9ee81be8549bae75d63e4b6fe69a4ffe6dfd4e3008e731e320d6da4bc4beae9'
'298e47a21c337101974fa5237b3110aa3c7638b5fa53bd07661413236c8ed3212b431abaeffd875af6c9a72b4f8e1c8512e1e1960cbfff15bfee62b32d305fc3'
)
@@ -101,6 +114,10 @@ b2sums=(
'0a4c47fa2e3e62edfeef4f7d1b94167f26d83ccadb94af6dc467785edd4e9a1c810b05e824abacb1088afc0fe3cc102ef14141fac1d9aac1497855cc8748cf9b'
'211234dd60995873e00952c29fcb77ee6f1e9519fda5abce0b1f3a26193f580ad0c948482fcc66769abf55e347f95a6e4ba2dde98257e6ddb97b6a18550aff5b'
'3935bed214408537fe436c6015377561d2429f467f32b6e391068b1a9ef06566de51fba06d4ece393d68d3ba9fdc13f39ecdbdcd543602d308bcb980fa568d51'
+ '1ff09abee75ef72397dc0e538b707083fead2491d4573b4e9208a4f08c11b227662bcae4086ab4dd0365422b8b4e0d4c865ba5dc744ee6574ab8605cf9667918'
+ 'f3fa2ca4016af09e62037424d40377c7270fad498ebe6822f867a3ff4b6ba9473c75d182c1b9ffb9c328086a9e3c99ab81eb396937ccc3f92f611c66712ab85d'
+ '0b2ec199c7d772d4cfa6db12a653963727b01efea764fe364bb9138c983c56d1a33cc5e002b7edfeff957118d162e0c53c8d1b038a2f643bca38821b0ee8c3f6'
+ '3d47ff65d0e69ec76e7390ab52c33a7ec39e403fc86dd9c0546b8a876ef69f44d60f4d833ac18c007b776a202eb33d08369165670857e718589c6f4f8a51a564'
'557d015bca7008ce824111f235da67b7e0051a693aaab666e97b78e753ed7928b72274af03d7fde12033986b733d5f996faf2a4feb6ecf53f39accae31334930'
)
@@ -115,13 +132,17 @@ b3sums=(
'9976a6c0ee11772d6d146fb5b1ab57f2df57a24158a0c87985a50d65deec52ed'
'7f766a97ab867f1f7c5c2fc2770c0d7c7831a6422dfbc89e47f69d4d786a233f'
'087e1f6c13658326117bef1b09693940d67322ea1635136fc6baeeff132cb1b1'
+ 'd0b5fcb56f4ea074569ef22ff57fafbaa9cd98cbbc4c3f4bf6bbd4ffa48f2fa0'
+ '87fa008865bb8b300375e22152de270a4b35ff604070578c152d44727cbca90d'
+ 'f03929c8964f2df4f4768745322a4c53b4105c2452a5b92c4c6655cf022193a9'
+ 'cc257ec08d2e8e00a3a30fba5f26e1282e832ff60f0e8e735bc0942425662064'
'f417610d7bdc942b79ee6fcc59c37e3d68ca09069a021e62a33fabe259dcc3af'
)
install=$pkgname.install
build() {
- cd openssh-portable-hpn-${_pkgver}/
+ cd "${srcdir}/openssh-portable-hpn-${_pkgver}/"
# fix building if scp is not installed on host
if [ ! -x /usr/bin/scp ]; then
@@ -160,18 +181,18 @@ build() {
make
}
-package() {
- cd openssh-portable-hpn-${_pkgver}/
+package_openssh-hpn() {
+ cd "${srcdir}/openssh-portable-hpn-${_pkgver}/"
make DESTDIR="${pkgdir}" install
#ln -sf hpnssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz
install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE"
- install -Dm644 ../sshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/hpnsshdgenkeys.service
- install -Dm644 ../sshd@.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd@.service
- install -Dm644 ../sshd.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd.service
- install -Dm644 ../sshd.socket "${pkgdir}"/usr/lib/systemd/system/hpnsshd.socket
+ install -Dm644 ../hpnsshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/hpnsshdgenkeys.service
+ install -Dm644 ../hpnsshd@.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd@.service
+ install -Dm644 ../hpnsshd.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd.service
+ install -Dm644 ../hpnsshd.socket "${pkgdir}"/usr/lib/systemd/system/hpnsshd.socket
install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/hpnsshd
install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/hpnfindssl.sh
@@ -185,3 +206,30 @@ package() {
-i "${pkgdir}"/etc/hpnssh/sshd_config
}
+package_openssh-hpn-shim(){
+ provides=('openssh')
+ conflicts=('openssh' 'openssh-hpn-git')
+ backup=(
+ 'etc/ssh/ssh_config'
+ 'etc/ssh/sshd_config'
+ 'etc/pam.d/sshd'
+ 'etc/hpnssh/ssh_config'
+ 'etc/hpnssh/sshd_config'
+ 'etc/pam.d/hpnsshd'
+ )
+
+ cd "${srcdir}/openssh-portable-hpn-${_pkgver}/"
+
+ install -dm0755 "${pkgdir}/usr/bin"; pushd "${pkgdir}/usr/bin"
+ for i in findssl.sh scp sftp ssh ssh-add ssh-agent ssh-copy-id ssh-keygen ssh-keyscan sshd; do
+ ln -s "hpn${i}" "${i}"
+ done; popd
+
+ install -Dm644 ../sshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/sshdgenkeys.service
+ install -Dm644 ../sshd@.service "${pkgdir}"/usr/lib/systemd/system/sshd@.service
+ install -Dm644 ../sshd.service "${pkgdir}"/usr/lib/systemd/system/sshd.service
+ install -Dm644 ../sshd.socket "${pkgdir}"/usr/lib/systemd/system/sshd.socket
+ install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd
+
+ install -Dm644 contrib/hpnssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1
+}
diff --git a/hpnsshd.service b/hpnsshd.service
new file mode 100644
index 000000000000..0e531bb005d4
--- /dev/null
+++ b/hpnsshd.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=OpenSSH-HPN Daemon
+Wants=hpnsshdgenkeys.service
+After=hpnsshdgenkeys.service
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/hpnsshd -D
+ExecReload=/bin/kill -HUP $MAINPID
+KillMode=process
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
+
+# This service file runs an SSH daemon that forks for each incoming connection.
+# If you prefer to spawn on-demand daemons, use sshd.socket and sshd@.service.
diff --git a/hpnsshd.socket b/hpnsshd.socket
new file mode 100644
index 000000000000..5fa2e343974c
--- /dev/null
+++ b/hpnsshd.socket
@@ -0,0 +1,10 @@
+[Unit]
+Conflicts=hpnsshd.service
+Wants=hpnsshdgenkeys.service
+
+[Socket]
+ListenStream=22
+Accept=yes
+
+[Install]
+WantedBy=sockets.target
diff --git a/hpnsshd@.service b/hpnsshd@.service
new file mode 100644
index 000000000000..ead31d9f41fd
--- /dev/null
+++ b/hpnsshd@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=OpenSSH-HPN Per-Connection Daemon
+After=hpnsshdgenkeys.service
+
+[Service]
+ExecStart=-/usr/bin/hpnsshd -i
+StandardInput=socket
+StandardError=syslog
diff --git a/hpnsshdgenkeys.service b/hpnsshdgenkeys.service
new file mode 100644
index 000000000000..c8c6ce3d2824
--- /dev/null
+++ b/hpnsshdgenkeys.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=SSH-HPN Key Generation
+ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key
+ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key.pub
+ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key
+ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key.pub
+ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key
+ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key.pub
+ConditionPathExists=|!/etc/hpnssh/ssh_host_key
+ConditionPathExists=|!/etc/hpnssh/ssh_host_key.pub
+ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key
+ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key.pub
+
+[Service]
+ExecStart=/usr/bin/hpnssh-keygen -A
+Type=oneshot
+RemainAfterExit=yes
diff --git a/sshd.service b/sshd.service
index 0e531bb005d4..afcf08ea8d5e 100644
--- a/sshd.service
+++ b/sshd.service
@@ -1,11 +1,11 @@
[Unit]
-Description=OpenSSH-HPN Daemon
-Wants=hpnsshdgenkeys.service
-After=hpnsshdgenkeys.service
+Description=OpenSSH-HPN Daemon (upstream shim)
+Wants=sshdgenkeys.service
+After=sshdgenkeys.service
After=network.target
[Service]
-ExecStart=/usr/bin/hpnsshd -D
+ExecStart=/usr/bin/hpnsshd -D -f /etc/ssh/sshd_config
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
diff --git a/sshd.socket b/sshd.socket
index 5fa2e343974c..e09e328690fd 100644
--- a/sshd.socket
+++ b/sshd.socket
@@ -1,6 +1,6 @@
[Unit]
-Conflicts=hpnsshd.service
-Wants=hpnsshdgenkeys.service
+Conflicts=sshd.service
+Wants=sshdgenkeys.service
[Socket]
ListenStream=22
diff --git a/sshd@.service b/sshd@.service
index ead31d9f41fd..96ffb5294356 100644
--- a/sshd@.service
+++ b/sshd@.service
@@ -1,8 +1,8 @@
[Unit]
-Description=OpenSSH-HPN Per-Connection Daemon
-After=hpnsshdgenkeys.service
+Description=OpenSSH-HPN Per-Connection Daemon (upstream shim)
+After=sshdgenkeys.service
[Service]
-ExecStart=-/usr/bin/hpnsshd -i
+ExecStart=-/usr/bin/hpnsshd -i -f /etc/ssh/sshd_config
StandardInput=socket
StandardError=syslog
diff --git a/sshdgenkeys.service b/sshdgenkeys.service
index c8c6ce3d2824..cf77872f0365 100644
--- a/sshdgenkeys.service
+++ b/sshdgenkeys.service
@@ -1,15 +1,15 @@
[Unit]
-Description=SSH-HPN Key Generation
-ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key
-ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key.pub
-ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key
-ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key.pub
-ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key
-ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key.pub
-ConditionPathExists=|!/etc/hpnssh/ssh_host_key
-ConditionPathExists=|!/etc/hpnssh/ssh_host_key.pub
-ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key
-ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key.pub
+Description=SSH-HPN Key Generation (upstream shim)
+ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key
+ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key.pub
+ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key
+ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key.pub
+ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key
+ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key.pub
+ConditionPathExists=|!/etc/ssh/ssh_host_key
+ConditionPathExists=|!/etc/ssh/ssh_host_key.pub
+ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key
+ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub
[Service]
ExecStart=/usr/bin/hpnssh-keygen -A