slstatus/components/uptime.c

24 lines
436 B
C
Raw Normal View History

/* See LICENSE file for copyright and license details. */
#include <inttypes.h>
#include <stdio.h>
#include <time.h>
#include "../util.h"
const char *
uptime(void)
2018-05-02 06:41:06 +00:00
{
uint64_t h, m;
struct timespec uptime;
if (clock_gettime(CLOCK_BOOTTIME, &uptime) < 0) {
warn("clock_gettime 'CLOCK_BOOTTIME'");
return NULL;
}
h = uptime.tv_sec / 3600;
m = uptime.tv_sec % 3600 / 60;
return bprintf("%" PRIu64 "h %" PRIu64 "m", h, m);
2018-05-02 06:41:06 +00:00
}