Introduction
Introduction Statistics Contact Development Disclaimer Help
uptime.c - slstatus - status monitor
git clone git://git.suckless.org/slstatus
Log
Files
Refs
README
LICENSE
---
uptime.c (702B)
---
1 /* See LICENSE file for copyright and license details. */
2 #include <stdint.h>
3 #include <stdio.h>
4 #include <time.h>
5
6 #include "../slstatus.h"
7 #include "../util.h"
8
9 #if defined(CLOCK_BOOTTIME)
10 #define UPTIME_FLAG CLOCK_BOOTTIME
11 #elif defined(CLOCK_UPTIME)
12 #define UPTIME_FLAG CLOCK_UPTIME
13 #else
14 #define UPTIME_FLAG CLOCK_MONOTONIC
15 #endif
16
17 const char *
18 uptime(const char *unused)
19 {
20 char warn_buf[256];
21 uintmax_t h, m;
22 struct timespec uptime;
23
24 if (clock_gettime(UPTIME_FLAG, &uptime) < 0) {
25 snprintf(warn_buf, sizeof(warn_buf), "clock_gettime %d",…
26 warn(warn_buf);
27 return NULL;
28 }
29
30 h = uptime.tv_sec / 3600;
31 m = uptime.tv_sec % 3600 / 60;
32
33 return bprintf("%juh %jum", h, m);
34 }
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.