Author: ed
Date: Wed Jan 13 18:32:31 2010
New Revision: 202211
URL: http://svn.freebsd.org/changeset/base/202211

Log:
  Let pam_lastlog use utmpx instead of libulog's utmpx interface.
  
  It will still use ulog_login(3) and ulog_logout(3), which will remain
  present.

Modified:
  head/lib/libpam/modules/pam_lastlog/pam_lastlog.c

Modified: head/lib/libpam/modules/pam_lastlog/pam_lastlog.c
==============================================================================
--- head/lib/libpam/modules/pam_lastlog/pam_lastlog.c   Wed Jan 13 18:28:58 
2010        (r202210)
+++ head/lib/libpam/modules/pam_lastlog/pam_lastlog.c   Wed Jan 13 18:32:31 
2010        (r202211)
@@ -49,6 +49,7 @@ __FBSDID("$FreeBSD$");
 #include <pwd.h>
 #include <time.h>
 #include <ulog.h>
+#include <utmpx.h>
 
 #define PAM_SM_SESSION
 
@@ -61,7 +62,7 @@ pam_sm_open_session(pam_handle_t *pamh, 
     int argc __unused, const char *argv[] __unused)
 {
        struct passwd *pwd;
-       struct ulog_utmpx *utx;
+       struct utmpx *utx;
        time_t t;
        const char *user;
        const void *rhost, *tty;
@@ -91,10 +92,10 @@ pam_sm_open_session(pam_handle_t *pamh, 
        }
 
        if ((flags & PAM_SILENT) == 0) {
-               if (ulog_setutxfile(UTXI_USER, NULL) != 0) {
-                       PAM_LOG("Failed to open lastlog database");
+               if (setutxdb(UTXDB_LASTLOGIN, NULL) != 0) {
+                       PAM_LOG("Failed to open lastlogin database");
                } else {
-                       utx = ulog_getutxuser(user);
+                       utx = getutxuser(user);
                        if (utx != NULL && utx->ut_type == USER_PROCESS) {
                                t = utx->ut_tv.tv_sec;
                                if (*utx->ut_host != '\0')
@@ -104,7 +105,7 @@ pam_sm_open_session(pam_handle_t *pamh, 
                                        pam_info(pamh, "Last login: %.*s on %s",
                                            24 - 5, ctime(&t), utx->ut_line);
                        }
-                       ulog_endutxent();
+                       endutxent();
                }
        }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to