openssh: enable authentication via Kerberos through GSSAPI (#31086)

Add variant +gssapi to enable authentication via Kerberos through GSSAPI

When openssh is installed at sites using Kerberos, openssh needs to auth
via Kerberos through GSSAPI in order to work in such environments.
This commit is contained in:
Bernhard Kaindl 2022-06-14 13:41:32 +02:00 committed by GitHub
parent bc577f2dee
commit 83efea32f4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -45,6 +45,9 @@ class Openssh(AutotoolsPackage):
version('6.7p1', sha256='b2f8394eae858dabbdef7dac10b99aec00c95462753e80342e530bbb6f725507') version('6.7p1', sha256='b2f8394eae858dabbdef7dac10b99aec00c95462753e80342e530bbb6f725507')
version('6.6p1', sha256='48c1f0664b4534875038004cc4f3555b8329c2a81c1df48db5c517800de203bb') version('6.6p1', sha256='48c1f0664b4534875038004cc4f3555b8329c2a81c1df48db5c517800de203bb')
variant('gssapi', default=True, description='Enable authentication via Kerberos through GSSAPI')
depends_on('krb5', when='+gssapi')
depends_on('openssl@:1.0', when='@:7.7p1') depends_on('openssl@:1.0', when='@:7.7p1')
depends_on('openssl') depends_on('openssl')
depends_on('libedit') depends_on('libedit')
@ -67,6 +70,8 @@ def configure_args(self):
# least newer versions want to create the directory during the # least newer versions want to create the directory during the
# install step and fail if they cannot do so. # install step and fail if they cannot do so.
args = ['--with-privsep-path={0}'.format(self.prefix.var.empty)] args = ['--with-privsep-path={0}'.format(self.prefix.var.empty)]
if self.spec.satisfies('+gssapi'):
args.append('--with-kerberos5=' + self.spec['krb5'].prefix)
# Somehow creating pie executables fails with nvhpc, not with gcc. # Somehow creating pie executables fails with nvhpc, not with gcc.
if '%nvhpc' in self.spec: if '%nvhpc' in self.spec: