When passwd file cannot be opened or the user name either cannot be
obtained or is not valid, return PAM_SERVICE_ERR instead of
PAM_SYSTEM_ERR.
* modules/pam_localuser/pam_localuser.c (pam_sm_authenticate): Return
PAM_SERVICE_ERR instead of PAM_SYSTEM_ERR.
---
modules/pam_localuser/pam_localuser.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/modules/pam_localuser/pam_localuser.c
b/modules/pam_localuser/pam_localuser.c
index dcfc1727..8f259caa 100644
--- a/modules/pam_localuser/pam_localuser.c
+++ b/modules/pam_localuser/pam_localuser.c
@@ -91,19 +91,19 @@ pam_sm_authenticate (pam_handle_t *pamh, int flags UNUSED,
if(fp == NULL) {
pam_syslog (pamh, LOG_ERR, "error opening \"%s\": %m",
filename);
- return PAM_SYSTEM_ERR;
+ return PAM_SERVICE_ERR;
}
if(pam_get_user(pamh, &user, NULL) != PAM_SUCCESS) {
pam_syslog (pamh, LOG_ERR, "user name not specified yet");
fclose(fp);
- return PAM_SYSTEM_ERR;
+ return PAM_SERVICE_ERR;
}
if ((user == NULL) || (strlen(user) == 0)) {
pam_syslog (pamh, LOG_ERR, "user name not valid");
fclose(fp);
- return PAM_SYSTEM_ERR;
+ return PAM_SERVICE_ERR;
}
if (strlen(user) > sizeof(name) - sizeof(":")) {
--
ldv