aboutsummaryrefslogtreecommitdiff
path: root/toys/other/uptime.c
diff options
context:
space:
mode:
authorIsaac Dunham <ibid.ag@gmail.com>2014-11-19 16:38:46 -0600
committerIsaac Dunham <ibid.ag@gmail.com>2014-11-19 16:38:46 -0600
commit46ddf0e34b03f7711a9c80f7a70dc8cbf732f782 (patch)
tree4f69c03c7da6c6f3fd977182ebb93c89703d47a8 /toys/other/uptime.c
parent159a7f1621eecf6cf3c2824ffb762a19bf5f7667 (diff)
downloadtoybox-46ddf0e34b03f7711a9c80f7a70dc8cbf732f782.tar.gz
probe for getspnam(), forkpty(), utmpx, replace sethostname()
Android is missing all of these; we need to probe for some so we have a config symbol to depend on. sethostname() is easily replaced. We got termios.h via pty.h; now it's not included in configure-step tools, so we need termios.h to generate globals.
Diffstat (limited to 'toys/other/uptime.c')
-rw-r--r--toys/other/uptime.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/toys/other/uptime.c b/toys/other/uptime.c
index adbbfc03..f584d9ab 100644
--- a/toys/other/uptime.c
+++ b/toys/other/uptime.c
@@ -25,17 +25,18 @@ void uptime_main(void)
time_t tmptime;
struct tm * now;
unsigned int days, hours, minutes;
- struct utmpx *entry;
- int users = 0;
+ USE_TOYBOX_UTMPX(struct utmpx *entry;)
+ USE_TOYBOX_UTMPX(int users = 0;)
// Obtain the data we need.
sysinfo(&info);
time(&tmptime);
now = localtime(&tmptime);
+
// Obtain info about logged on users
- setutxent();
- while ((entry = getutxent())) if (entry->ut_type == USER_PROCESS) users++;
- endutxent();
+ USE_TOYBOX_UTMPX(setutxent();)
+ USE_TOYBOX_UTMPX(while ((entry = getutxent())) if (entry->ut_type == USER_PROCESS) users++;)
+ USE_TOYBOX_UTMPX(endutxent();)
// Time
xprintf(" %02d:%02d:%02d up ", now->tm_hour, now->tm_min, now->tm_sec);
@@ -48,7 +49,7 @@ void uptime_main(void)
if (days) xprintf("%d day%s, ", days, (days!=1)?"s":"");
if (hours) xprintf("%2d:%02d, ", hours, minutes);
else printf("%d min, ", minutes);
- printf(" %d user%s, ", users, (users!=1) ? "s" : "");
+ USE_TOYBOX_UTMPX(printf(" %d user%s, ", users, (users!=1) ? "s" : "");)
printf(" load average: %.02f, %.02f, %.02f\n", info.loads[0]/65536.0,
info.loads[1]/65536.0, info.loads[2]/65536.0);
}