Module Name: src Committed By: martin Date: Mon Oct 2 13:09:01 UTC 2023
Modified Files: src/lib/libpam/modules/pam_krb5 [netbsd-8]: pam_krb5.c Log Message: Pull up following revision(s) (requested by riastradh in ticket #1898): lib/libpam/modules/pam_krb5/pam_krb5.c: revision 1.32 pam_krb5: Fix PR lib/57631. Loose ends in the fix for NetBSD-SA2023-006 that weren't caught by review or, somehow, by my own testing. Evidently we need automatic tests for this pam business. To generate a diff of this commit: cvs rdiff -u -r1.26.18.1 -r1.26.18.2 \ src/lib/libpam/modules/pam_krb5/pam_krb5.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libpam/modules/pam_krb5/pam_krb5.c diff -u src/lib/libpam/modules/pam_krb5/pam_krb5.c:1.26.18.1 src/lib/libpam/modules/pam_krb5/pam_krb5.c:1.26.18.2 --- src/lib/libpam/modules/pam_krb5/pam_krb5.c:1.26.18.1 Wed Jun 21 22:04:13 2023 +++ src/lib/libpam/modules/pam_krb5/pam_krb5.c Mon Oct 2 13:09:01 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: pam_krb5.c,v 1.26.18.1 2023/06/21 22:04:13 martin Exp $ */ +/* $NetBSD: pam_krb5.c,v 1.26.18.2 2023/10/02 13:09:01 martin Exp $ */ /*- * This pam_krb5 module contains code that is: @@ -53,7 +53,7 @@ #ifdef __FreeBSD__ __FBSDID("$FreeBSD: src/lib/libpam/modules/pam_krb5/pam_krb5.c,v 1.22 2005/01/24 16:49:50 rwatson Exp $"); #else -__RCSID("$NetBSD: pam_krb5.c,v 1.26.18.1 2023/06/21 22:04:13 martin Exp $"); +__RCSID("$NetBSD: pam_krb5.c,v 1.26.18.2 2023/10/02 13:09:01 martin Exp $"); #endif #include <sys/types.h> @@ -341,7 +341,6 @@ pam_sm_authenticate(pam_handle_t *pamh, krbret = verify_krb_v5_tgt(pam_context, ccache, srvdup, debug, auth_service, auth_princ, auth_phost, &auth_data); - free(srvdup); if (krbret == -1) { PAM_VERBOSE_ERROR("Kerberos 5 error"); krb5_cc_destroy(pam_context, ccache); @@ -940,6 +939,7 @@ verify_krb_v5_tgt_begin(krb5_context con const char *services[3], **service; *servicep = NULL; + *princp = NULL; if (debug) openlog_r("pam_krb5", LOG_PID, LOG_AUTHPRIV, datap); @@ -982,6 +982,8 @@ verify_krb_v5_tgt_begin(krb5_context con &keyblock); if (retval != 0) continue; + *servicep = *service; + *princp = princ; break; } if (keyblock)