Module Name: src Committed By: snj Date: Wed Mar 17 03:03:58 UTC 2010
Modified Files: src/usr.bin/passwd [netbsd-5]: pam_passwd.c Log Message: Pull up following revision(s) (requested by joerg in ticket #1333): usr.bin/passwd/pam_passwd.c: revision 1.6 Do not call pam_end with an invalid handle if pam_start failed. >From Richard Hansen. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.4.18.1 src/usr.bin/passwd/pam_passwd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.bin/passwd/pam_passwd.c diff -u src/usr.bin/passwd/pam_passwd.c:1.4 src/usr.bin/passwd/pam_passwd.c:1.4.18.1 --- src/usr.bin/passwd/pam_passwd.c:1.4 Sun May 6 09:19:44 2007 +++ src/usr.bin/passwd/pam_passwd.c Wed Mar 17 03:03:58 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: pam_passwd.c,v 1.4 2007/05/06 09:19:44 jnemeth Exp $ */ +/* $NetBSD: pam_passwd.c,v 1.4.18.1 2010/03/17 03:03:58 snj Exp $ */ /*- * Copyright (c) 2002 Networks Associates Technologies, Inc. @@ -38,7 +38,7 @@ #ifdef __FreeBSD__ __FBSDID("$FreeBSD: src/usr.bin/passwd/passwd.c,v 1.23 2003/04/18 21:27:09 nectar Exp $"); #else -__RCSID("$NetBSD: pam_passwd.c,v 1.4 2007/05/06 09:19:44 jnemeth Exp $"); +__RCSID("$NetBSD: pam_passwd.c,v 1.4.18.1 2010/03/17 03:03:58 snj Exp $"); #endif #include <sys/param.h> @@ -102,7 +102,9 @@ /* initialize PAM -- always use the program name "passwd" */ pam_err = pam_start("passwd", username, &pamc, &pamh); - pam_check("unable to start PAM session"); + if (pam_err != PAM_SUCCESS) + errx(1, "unable to start PAM session: %s", + pam_strerror(NULL, pam_err)); pam_err = pam_set_item(pamh, PAM_TTY, ttyname(STDERR_FILENO)); pam_check("unable to set TTY");