From 5fccc33d3f2aa476293505fa7dace98495dccaee Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Mon, 13 Aug 2012 20:06:44 +0200 Subject: Respect PAM_AUTHTOK_TYPE in pam_get_authtok_verify(). libpam/pam_get_authtok.c (pam_get_authtok_internal): Set the PAM_AUTHTOK_TYPE item when obtained from module options. (pam_get_authtok_verify): Use the PAM_AUTHTOK_TYPE item when prompting. --- libpam/pam_get_authtok.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'libpam') diff --git a/libpam/pam_get_authtok.c b/libpam/pam_get_authtok.c index ecd29910..31bb1627 100644 --- a/libpam/pam_get_authtok.c +++ b/libpam/pam_get_authtok.c @@ -102,6 +102,8 @@ pam_get_authtok_internal (pam_handle_t *pamh, int item, if (retval != PAM_SUCCESS || authtok_type == NULL) authtok_type = ""; } + else + pam_set_item(pamh, PAM_AUTHTOK_TYPE, authtok_type); } retval = pam_get_item (pamh, item, &prevauthtok); @@ -210,6 +212,9 @@ pam_get_authtok_verify (pam_handle_t *pamh, const char **authtok, } else { + retval = pam_get_item (pamh, PAM_AUTHTOK_TYPE, (const void **)&authtok_type); + if (retval != PAM_SUCCESS || authtok_type == NULL) + authtok_type = ""; retval = pam_prompt (pamh, PAM_PROMPT_ECHO_OFF, &resp, PROMPT2, authtok_type, strlen (authtok_type) > 0?" ":""); -- cgit v1.2.3