bug report: last login time vs PAM in portability release
Kevin Steves
stevesk at pobox.com
Sat Oct 13 07:51:14 EST 2001
on hp-ux 11 i see:
$ date;ssh jenny
Fri Oct 12 14:44:13 PDT 2001
Last successful login for stevesk: Fri Oct 12 10:45:42 PST8PDT 2001 on pts/2
Last unsuccessful login for stevesk: Mon Sep 24 22:55:53 PST8PDT 2001
Last login: Fri Oct 12 10:45:43 2001 from 172.31.1.53
You have mail.
so solaris PAM is different. can other solaris+PAM users confirm this?
On Fri, 12 Oct 2001, Benn Oshrin wrote:
:There appears to be a problem with the reported last login time for
:v2.9.9p2 (and possibly earlier versions). This is for PAM enabled Solaris
:hosts (Sol 7 and 8).
:
:Login to a host running stock 2.9.9p2:
:
: benno[~] starscream% date ; slogin hola
: Fri Oct 12 13:10:50 EDT 2001
: Last login: Fri Oct 12 13:10:52 2001 from starscream.cc.c
: SunOS hola 5.7 Generic_106541-09 sun4u sparc SUNW,Ultra-60
: You have new mail.
: benno[~] hola%
:
:Note that the last login time reported is two seconds after the connection
:is initiated. It appears that this is because pam_open_session is called
:before do_login. pam_open_session updates the lastlog file. When do_login
:is called, it reads the already updated lastlog file and reports the time
:of the session just started. To fix this, I moved the pam_open_session
:call into do_login:
:
:--- session.c Fri Oct 12 13:05:58 2001
:+++ .snapshot/nightly.3/session.c Mon Oct 8 15:52:02 2001
:@@ -541,6 +541,11 @@
: ptyfd = s->ptyfd;
: ttyfd = s->ttyfd;
:
:+#if defined(USE_PAM)
:+ do_pam_session(s->pw->pw_name, s->tty);
:+ do_pam_setcred(1);
:+#endif
:+
: /* Fork the child. */
: if ((pid = fork()) == 0) {
:
:@@ -698,11 +703,6 @@
: last_login_time = get_last_login_time(pw->pw_uid,
:pw->pw_name,
: hostname, sizeof(hostname));
: }
:-
:-#if defined(USE_PAM)
:- do_pam_session(s->pw->pw_name, s->tty);
:- do_pam_setcred(1);
:-#endif
:
: /* Record that there was a login on that tty from the remote host.
:*/
: record_login(pid, s->tty, pw->pw_name, pw->pw_uid,
:
:And here's a session from to a host running the patched version:
:
: benno[~] starscream% date ; slogin saluton
: Fri Oct 12 13:16:47 EDT 2001
: Last login: Fri Oct 12 13:05:03 2001 from starscream.cc.c
: SunOS saluton 5.7 Generic_106541-09 sun4u sparc SUNW,Ultra-60
: You have new mail.
: benno[~] saluton%
:
:I hope you find this useful.
:
:-Benn-
:
More information about the openssh-unix-dev
mailing list