From 138f761904d8630adc2b333ae43e309577d6f65a Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Thu, 5 Aug 2021 15:34:37 +0200 Subject: [PATCH] test: adapt install_pam() for openSUSE On openSUSE the default pam config files are shipped in /usr/etc/pam.d. Also empty password is not allowed by default. --- test/test-functions | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/test/test-functions b/test/test-functions index fe3081106fe..8b8c89a2062 100644 --- a/test/test-functions +++ b/test/test-functions @@ -1587,7 +1587,7 @@ install_pam() { paths+=(/lib*/security) fi - for d in /etc/pam.d /etc/security /usr/lib/pam.d; do + for d in /etc/pam.d /etc/security /usr/{etc,lib}/pam.d; do [ -d "$d" ] && paths+=("$d") done @@ -1601,6 +1601,13 @@ install_pam() { # set empty root password for easy debugging sed -i 's/^root:x:/root::/' "${initdir:?}/etc/passwd" + + # And make sure pam_unix will accept it by making sure that + # the PAM module has the nullok option. + for d in /etc/pam.d /usr/{etc,lib}/pam.d; do + [ -d "$initdir/$d" ] || continue + sed -i '/^auth.*pam_unix.so/s/$/ nullok/' "$initdir/$d"/* + done } install_keymaps() {