summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2020-05-09 08:00:00 +0000
committerDmitry V. Levin <ldv@altlinux.org>2020-05-09 08:00:00 +0000
commit28903b11794f0b8509b2c791360219dbeb41f54e (patch)
tree01000b923fc6806402e9e0771a9bb5be37c8069f /modules
parent385f8fbd1ce9b8950c02dff94f5e89df7e77a752 (diff)
pam_setquota: fix return value when the user is unknown
Following the bad example in pam_mkhomedir module, from the very beginning pam_setquota module used to return PAM_CRED_INSUFFICIENT when pam_modutil_getpwnam() returned an error. Fix this now by changing the return value to PAM_USER_UNKNOWN. * modules/pam_setquota/pam_setquota.c (pam_sm_open_session): Return PAM_USER_UNKNOWN instead of PAM_CRED_INSUFFICIENT. * modules/pam_setquota/pam_setquota.8.xml (PAM_CRED_INSUFFICIENT): Replace with PAM_USER_UNKNOWN.
Diffstat (limited to 'modules')
-rw-r--r--modules/pam_setquota/pam_setquota.8.xml2
-rw-r--r--modules/pam_setquota/pam_setquota.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/modules/pam_setquota/pam_setquota.8.xml b/modules/pam_setquota/pam_setquota.8.xml
index 45c8653e..bb878e8c 100644
--- a/modules/pam_setquota/pam_setquota.8.xml
+++ b/modules/pam_setquota/pam_setquota.8.xml
@@ -218,7 +218,7 @@
</varlistentry>
<varlistentry>
- <term>PAM_CRED_INSUFFICIENT</term>
+ <term>PAM_USER_UNKNOWN</term>
<listitem>
<para>
The user was not found.
diff --git a/modules/pam_setquota/pam_setquota.c b/modules/pam_setquota/pam_setquota.c
index 43c76d66..9c05862a 100644
--- a/modules/pam_setquota/pam_setquota.c
+++ b/modules/pam_setquota/pam_setquota.c
@@ -227,7 +227,8 @@ pam_sm_open_session(pam_handle_t *pamh, int flags UNUSED,
/* Get the password entry */
pwd = pam_modutil_getpwnam(pamh, user);
if (pwd == NULL) {
- return PAM_CRED_INSUFFICIENT;
+ pam_syslog(pamh, LOG_NOTICE, "user unknown");
+ return PAM_USER_UNKNOWN;
}
/* Check if we should not set quotas for user */