PrintLastLog fails on systems without lastlog but with utmpx

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

 



>From FreeBSD PR 209441. configure sets DISABLE_LASTLOG if we do not
have lastlog.ll_line:

AC_CHECK_MEMBER([struct lastlog.ll_line], [], [
    if test x$SKIP_DISABLE_LASTLOG_DEFINE != "xyes" ; then
        AC_DEFINE([DISABLE_LASTLOG])
    fi
        ], [

However DISABLE_LASTLOG disables support for PrintLastLog altogether
-- from servconf.c:

#ifdef DISABLE_LASTLOG
        { "printlastlog", sUnsupported, SSHCFG_GLOBAL },
#else
        { "printlastlog", sPrintLastLog, SSHCFG_GLOBAL },
#endif

In getlast_entry() DISABLE_LASTLOG disables use of wtmp and wtmpx, but
not utmpx. DISABLE_LASTLOG seems to be intended to mean disable last
login functionality altogether, and disable use of specifically
utmp/lastlog, in different locations.

It seems like (for consistency with --disable-utmp, --disable-utmpx,
--disable-wtmp, --disable-wtmpx) DISABLE_LASTLOG should refer only to
lastlog specifically, not last login functionality in general. Thus,
servconf should probably be:

#if defined(DISABLE_LASTLOG) && defined(DISABLE_UTMP) &&
defined(DISABLE_UTMPX) &&...
        { "printlastlog", sUnsupported, SSHCFG_GLOBAL },
#else
        { "printlastlog", sPrintLastLog, SSHCFG_GLOBAL },
#endif

and getlast_entry() should move the wtmp/wtmpx cases out of
!defined(DISABLE_LASTLOG).
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@xxxxxxxxxxx
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev



[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux