1
0
Fork 0
pam/debian/tests/pam-test.py
Daniel Baumann 43eb8a22af
Adding debian version 1.7.0-3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-21 06:53:44 +02:00

33 lines
851 B
Python

#!/usr/bin/python3
# Copyright 2023, Sam Hartman
# This code may be redistributed under the same terms as Linux Pam
# itself, or at your pution, under the GNU General Public License,
# version 3.
import PAM
def conversation(auth, queries, userdata):
results = []
for prompt, type in queries:
if type == PAM.PAM_PROMPT_ECHO_OFF:
results.append(('ThisLongPasswordIsHardCoded', 0))
else: results.append(('',0))
return results
# set a password
auth = PAM.pam()
auth.start('passwd')
auth.set_item(PAM.PAM_USER, 'pam_test')
auth.set_item(PAM.PAM_CONV, conversation)
auth.chauthtok()
# Now authenticate and session
auth = PAM.pam()
auth.start('login')
auth.set_item(PAM.PAM_USER, 'pam_test')
auth.set_item(PAM.PAM_CONV, conversation)
auth.authenticate()
auth.acct_mgmt()
auth.open_session()
auth.close_session()