22 lines
858 B
Diff
22 lines
858 B
Diff
Index: smf-init/usr/src/cmd/init/init.c
|
|
===================================================================
|
|
--- smf-init.orig/usr/src/cmd/init/init.c
|
|
+++ smf-init/usr/src/cmd/init/init.c
|
|
@@ -2610,6 +2610,7 @@ waitproc(struct PROC_TABLE *process)
|
|
/*
|
|
* notify_pam_dead(): calls into the PAM framework to close the given session.
|
|
*/
|
|
+static struct pam_conv cv = {NULL, NULL};
|
|
static void
|
|
notify_pam_dead(struct utmpx *up)
|
|
{
|
|
@@ -2625,7 +2626,7 @@ notify_pam_dead(struct utmpx *up)
|
|
(void) snprintf(ttyn, sizeof (ttyn), "%s", up->ut_line);
|
|
(void) snprintf(host, sizeof (host), "%s", up->ut_host);
|
|
|
|
- if (pam_start("init", user, NULL, &pamh) == PAM_SUCCESS) {
|
|
+ if (pam_start("init", user, &cv, &pamh) == PAM_SUCCESS) {
|
|
(void) pam_set_item(pamh, PAM_TTY, ttyn);
|
|
(void) pam_set_item(pamh, PAM_RHOST, host);
|
|
(void) pam_close_session(pamh, 0);
|