diff options
author | Thorsten Kukuk <kukuk@thkukuk.de> | 2006-08-01 08:54:57 +0000 |
---|---|---|
committer | Thorsten Kukuk <kukuk@thkukuk.de> | 2006-08-01 08:54:57 +0000 |
commit | 31c5402b292a1c76268221f570952c450755fd60 (patch) | |
tree | 673e90ea018cbaff6ecb5e4bd59da1f654104dbe /libpam/pam_dispatch.c | |
parent | b3adab54cacbe37e75406e2434b51b3ec0e82438 (diff) | |
download | pam-31c5402b292a1c76268221f570952c450755fd60.tar.gz pam-31c5402b292a1c76268221f570952c450755fd60.tar.bz2 pam-31c5402b292a1c76268221f570952c450755fd60.zip |
Relevant BUGIDs: BRC#196859
Purpose of commit: bugfix
Commit summary:
---------------
2006-08-01 Thorsten Kukuk <kukuk@thkukuk.de>
* libpam/Makefile.am: Bump patchlevel of libpam.
* libpam/pam_dispatch.c (_pam_dispatch_aux): If [return=die]
or [return=bad] is used, don't return PAM_IGNORE. Based on
patch by Tomas Mraz <t8m@centrum.cz>, [BRC#196859].
Diffstat (limited to 'libpam/pam_dispatch.c')
-rw-r--r-- | libpam/pam_dispatch.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libpam/pam_dispatch.c b/libpam/pam_dispatch.c index 65c3cbc9..ab032d74 100644 --- a/libpam/pam_dispatch.c +++ b/libpam/pam_dispatch.c @@ -3,7 +3,6 @@ /* * Copyright (c) 1998, 2005 Andrew G. Morgan <morgan@kernel.org> * - * $Id$ */ #include "pam_private.h" @@ -209,7 +208,11 @@ static int _pam_dispatch_aux(pam_handle_t *pamh, int flags, struct handler *h, #endif /* PAM_FAIL_NOW_ON */ if ( impression != _PAM_NEGATIVE ) { impression = _PAM_NEGATIVE; - status = retval; + /* Don't return with PAM_IGNORE as status */ + if ( retval == PAM_IGNORE ) + status = PAM_MUST_FAIL_CODE; + else + status = retval; } if ( action == _PAM_ACTION_DIE ) { goto decision_made; |