Following the bad example in pam_succeed_if module, from the very
beginning pam_usertype used to override the default prompt used by
pam_get_user() with "login: ". Fix this now.
* modules/pam_usertype/pam_usertype.c (pam_sm_authenticate): Do not
request PAM_USER_PROMPT item, invoke pam_get_user() with the default
prompt.
---
modules/pam_usertype/pam_usertype.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/modules/pam_usertype/pam_usertype.c b/modules/pam_usertype/pam_usertype.c
index a15599e3..820cf693 100644
--- a/modules/pam_usertype/pam_usertype.c
+++ b/modules/pam_usertype/pam_usertype.c
@@ -112,7 +112,6 @@ pam_usertype_get_uid(struct pam_usertype_opts *opts,
uid_t *_uid)
{
struct passwd *pwd;
- const void *prompt;
const char *username;
int ret;
@@ -131,12 +130,7 @@ pam_usertype_get_uid(struct pam_usertype_opts *opts,
}
/* Get uid of user that is being authenticated. */
- ret = pam_get_item(pamh, PAM_USER_PROMPT, &prompt);
- if (ret != PAM_SUCCESS || prompt == NULL || strlen(prompt) == 0) {
- prompt = "login: ";
- }
-
- ret = pam_get_user(pamh, &username, prompt);
+ ret = pam_get_user(pamh, &username, NULL);
if (ret != PAM_SUCCESS || username == NULL) {
pam_syslog(pamh, LOG_ERR, "error retrieving user name: %s",
pam_strerror(pamh, ret));
--
ldv