Files
2026-05-11 09:15:08 +02:00

40 lines
1.1 KiB
Bash

#!/usr/bin/env bash
# Check if authselect.conf exists
if [[ ! -f /etc/authselect/authselect.conf ]]; then
echo "/etc/authselect/authselect.conf is missing."
exit 1
fi
l_module_name="faillock"
l_pam_profile="$(head -1 /etc/authselect/authselect.conf)"
if grep -Pq -- '^custom\/' <<<"$l_pam_profile"; then
l_pam_profile_path="/etc/authselect/$l_pam_profile"
else
l_pam_profile_path="/usr/share/authselect/default/$l_pam_profile"
fi
for file in "$l_pam_profile_path/password-auth" "$l_pam_profile_path/system-auth"; do
if [[ ! -f "$file" ]]; then
echo "File $file does not exist. Test failed."
exit 1
fi
if ! grep -P -- "\bpam_$l_module_name\.so\b" "$file" >/dev/null; then
echo "pam_faillock.so entry not found in $file. Test failed."
exit 1
else
echo "pam_faillock.so entry found in $file."
fi
if ! grep -P -- "\{include if \"with-faillock\"\}" "$file" >/dev/null; then
echo "Entry '{include if \"with-faillock\"}' not found in $file. Test failed."
exit 1
else
echo "Entry '{include if \"with-faillock\"}' found in $file. Test passed."
fi
done
exit 0