aboutsummaryrefslogtreecommitdiff
path: root/pam_fshadow/pam_fshadow.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2011-08-31 07:34:59 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2011-08-31 07:34:59 +0000
commit9a1b32df22e491c0d1361804556a5f7b86d7dace (patch)
tree0978813ff39c231d16328c2db811887a879e9d69 /pam_fshadow/pam_fshadow.c
parentfc8faec0f7186283a053f0f70d24c1047eba22fa (diff)
downloadpam-modules-9a1b32df22e491c0d1361804556a5f7b86d7dace.tar.gz
pam-modules-9a1b32df22e491c0d1361804556a5f7b86d7dace.tar.bz2
Various bugfixes.
* pam_fshadow/pam_fshadow.c (pam_sm_authenticate): Fix erroneous conditional, which allowed for logins with arbitrary passwords if `nopasswd' option was given. * lib/graypam.h (gray_free_transform_expr): New proto. * lib/transform.c (transform) <has_regex>: New member. (free_transform,free_segment): New statics. (gray_free_transform_expr): New function. * pam_regex/pam_regex.c (pam_sm_authenticate): Free slist and transform expression. git-svn-id: file:///svnroot/pam-modules/trunk@116 56984be4-0537-0410-a56c-fcb268c96130
Diffstat (limited to 'pam_fshadow/pam_fshadow.c')
-rw-r--r--pam_fshadow/pam_fshadow.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pam_fshadow/pam_fshadow.c b/pam_fshadow/pam_fshadow.c
index f29df37..111a594 100644
--- a/pam_fshadow/pam_fshadow.c
+++ b/pam_fshadow/pam_fshadow.c
@@ -438,7 +438,7 @@ pam_sm_authenticate(pam_handle_t *pamh, int flags,
if (cntl_flags & CNTL_PASSWD)
retval = verify_user_acct(confdir, username, &pwstr);
else
- retval = 0;
+ retval = PAM_SUCCESS;
if (retval == PAM_SUCCESS) {
if (pwstr) {
if (strcmp(pwstr, crypt(password, pwstr)) == 0)
@@ -446,7 +446,7 @@ pam_sm_authenticate(pam_handle_t *pamh, int flags,
else
retval = PAM_AUTH_ERR;
free(pwstr);
- } else if (!(cntl_flags & CNTL_SHADOW))
+ } else if (cntl_flags & CNTL_SHADOW)
retval = verify_user_pass(confdir, username, password);
}

Return to:

Send suggestions and report system problems to the System administrator.