diff options
Diffstat (limited to 'lib/libpam/pam_end.c')
-rw-r--r-- | lib/libpam/pam_end.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/libpam/pam_end.c b/lib/libpam/pam_end.c index c855b59c48852..04541297d8a6e 100644 --- a/lib/libpam/pam_end.c +++ b/lib/libpam/pam_end.c @@ -1,6 +1,6 @@ /*- * Copyright (c) 2002-2003 Networks Associates Technology, Inc. - * Copyright (c) 2004-2011 Dag-Erling Smørgrav + * Copyright (c) 2004-2017 Dag-Erling Smørgrav * All rights reserved. * * This software was developed for the FreeBSD Project by ThinkSec AS and @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: pam_end.c 913 2017-01-21 15:11:12Z des $ + * $OpenPAM: pam_end.c 938 2017-04-30 21:34:42Z des $ */ #ifdef HAVE_CONFIG_H @@ -60,6 +60,8 @@ pam_end(pam_handle_t *pamh, int i; ENTER(); + if (pamh == NULL) + RETURNC(PAM_BAD_HANDLE); /* clear module data */ while ((dp = pamh->module_data) != NULL) { @@ -89,6 +91,12 @@ pam_end(pam_handle_t *pamh, RETURNC(PAM_SUCCESS); } +/* + * Error codes: + * + * PAM_BAD_HANDLE + */ + /** * The =pam_end function terminates a PAM transaction and destroys the * corresponding PAM context, releasing all resources allocated to it. |