*: Switch to POSIX utmpx API

UTMP is SVID legacy, UTMPX is mandated by POSIX.

Glibc and uClibc have identical layout of UTMP and UTMPX, both of these
libc treat _PATH_UTMPX as _PATH_UTMP so from a user-perspective nothing
changes except the names of the API entrypoints.

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
This commit is contained in:
Bernhard Reutner-Fischer
2015-04-02 23:03:46 +02:00
parent 1186894f77
commit 86a7f18f21
9 changed files with 56 additions and 52 deletions

View File

@@ -81,10 +81,10 @@ int uptime_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
#if ENABLE_FEATURE_UPTIME_UTMP_SUPPORT
{
struct utmp *ut;
struct utmpx *ut;
unsigned users = 0;
while ((ut = getutent()) != NULL) {
if ((ut->ut_type == USER_PROCESS) && (ut->ut_name[0] != '\0'))
while ((ut = getutxent()) != NULL) {
if ((ut->ut_type == USER_PROCESS) && (ut->ut_user[0] != '\0'))
users++;
}
printf(", %u users", users);