diff options
author | David Seifert <soap@gentoo.org> | 2023-07-31 17:12:33 +0200 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2023-07-31 17:12:33 +0200 |
commit | 9ee970fd6afc45d0ea99f3bab90b40c8ce6b40c5 (patch) | |
tree | b2bb5f6c93cdd65379cc3d30ff5a1297ac4f05e7 /eclass/pam.eclass | |
parent | xfce-extra/xfce4-clipman-plugin: Bump to 1.6.4 (diff) | |
download | gentoo-9ee970fd6afc45d0ea99f3bab90b40c8ce6b40c5.tar.gz gentoo-9ee970fd6afc45d0ea99f3bab90b40c8ce6b40c5.tar.bz2 gentoo-9ee970fd6afc45d0ea99f3bab90b40c8ce6b40c5.zip |
pam.eclass: remove EAPI 6
Closes: https://github.com/gentoo/gentoo/pull/31917
Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'eclass/pam.eclass')
-rw-r--r-- | eclass/pam.eclass | 69 |
1 files changed, 31 insertions, 38 deletions
diff --git a/eclass/pam.eclass b/eclass/pam.eclass index 22b59ad65e43..2516fa896587 100644 --- a/eclass/pam.eclass +++ b/eclass/pam.eclass @@ -6,14 +6,14 @@ # base-system@gentoo.org # @AUTHOR: # Diego Pettenò <flameeyes@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Handles pam related tasks # @DESCRIPTION: # This eclass contains functions to install pamd configuration files and # pam modules. -case ${EAPI:-0} in - [678]) ;; +case ${EAPI} in + 7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -22,6 +22,14 @@ _PAM_ECLASS=1 inherit flag-o-matic +# @FUNCTION: _pam_flag_disabled +# @INTERNAL +# @DESCRIPTION: +# Check whether pam support is disabled. +_pam_flag_disabled() { + in_iuse pam && ! use pam +} + # @FUNCTION: dopamd # @USAGE: <file> [more files] # @DESCRIPTION: @@ -29,15 +37,13 @@ inherit flag-o-matic dopamd() { [[ -z $1 ]] && die "dopamd requires at least one argument" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 ( # dont want to pollute calling env insinto /etc/pam.d insopts -m 0644 doins "$@" - ) || die "failed to install $@" + ) cleanpamd "$@" } @@ -48,15 +54,13 @@ dopamd() { newpamd() { [[ $# -ne 2 ]] && die "newpamd requires two arguments" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 ( # dont want to pollute calling env insinto /etc/pam.d insopts -m 0644 newins "$1" "$2" - ) || die "failed to install $1 as $2" + ) cleanpamd $2 } @@ -67,15 +71,13 @@ newpamd() { dopamsecurity() { [[ $# -lt 2 ]] && die "dopamsecurity requires at least two arguments" - if has pam ${IUSE} && ! use pam; then - return 0 - fi + _pam_flag_disabled && return 0 ( # dont want to pollute calling env insinto /etc/security/$1 insopts -m 0644 doins "${@:2}" - ) || die "failed to install ${@:2}" + ) } # @FUNCTION: newpamsecurity @@ -85,15 +87,13 @@ dopamsecurity() { newpamsecurity() { [[ $# -ne 3 ]] && die "newpamsecurity requires three arguments" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 ( # dont want to pollute calling env insinto /etc/security/$1 insopts -m 0644 newins "$2" "$3" - ) || die "failed to install $2 as $3" + ) } # @FUNCTION: getpam_mod_dir @@ -129,12 +129,10 @@ EOF dopammod() { [[ -z $1 ]] && die "dopammod requires at least one argument" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 exeinto $(getpam_mod_dir) - doexe "$@" || die "failed to install $@" + doexe "$@" } # @FUNCTION: newpammod @@ -145,12 +143,10 @@ dopammod() { newpammod() { [[ $# -ne 2 ]] && die "newpammod requires two arguments" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 exeinto $(getpam_mod_dir) - newexe "$1" "$2" || die "failed to install $1 as $2" + newexe "$1" "$2" } # @FUNCTION: pamd_mimic_system @@ -171,26 +167,23 @@ pamd_mimic_system() { pamd_mimic() { [[ $# -lt 3 ]] && die "pamd_mimic requires at least three arguments" - if has pam ${IUSE} && ! use pam; then - return 0; - fi + _pam_flag_disabled && return 0 dodir /etc/pam.d - pamdfile=${D}/etc/pam.d/$2 - echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" >> \ - $pamdfile + local pamdfile="${ED}/etc/pam.d/$2" + echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" \ + >> "${pamdfile}" || die - originalstack=$1 - authlevels="auth account password session" + local authlevels="auth account password session" - mimic="\tsubstack\t\t${originalstack}" + local mimic="\tsubstack\t\t$1" shift; shift while [[ -n $1 ]]; do has $1 ${authlevels} || die "unknown level type" - echo -e "$1${mimic}" >> ${pamdfile} + echo -e "$1${mimic}" >> "${pamdfile}" || die shift done @@ -204,7 +197,7 @@ pamd_mimic() { cleanpamd() { while [[ -n $1 ]]; do if ! has_version sys-libs/pam; then - sed -i -e '/pam_shells\|pam_console/s:^:#:' "${D}/etc/pam.d/$1" || die + sed -i -e '/pam_shells\|pam_console/s:^:#:' "${ED}/etc/pam.d/$1" || die fi shift |