commit 19f3c8f545237f9db5e994220f3529b192b4bf39
parent 71eb1d321d1937b9fc96891fa47211a9e65a1e5e
Author: Quentin Rameau <quinq@fifth.space>
Date: Mon, 30 Apr 2018 15:14:38 +0200
uptime: OS split
Diffstat:
4 files changed, 65 insertions(+), 64 deletions(-)
diff --git a/Makefile b/Makefile
@@ -22,7 +22,7 @@ COM =\
components/run_command\
components/$(OS)/swap \
components/$(OS)/temperature \
- components/uptime\
+ components/$(OS)/uptime \
components/user\
components/volume\
components/wifi
diff --git a/components/Linux/uptime.c b/components/Linux/uptime.c
@@ -0,0 +1,24 @@
+/* See LICENSE file for copyright and license details. */
+#include <errno.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/sysinfo.h>
+
+#include "../../util.h"
+
+const char *
+uptime(void)
+{
+ int h;
+ int m;
+ int uptime = 0;
+ struct sysinfo info;
+
+ sysinfo(&info);
+ uptime = info.uptime;
+
+ h = uptime / 3600;
+ m = (uptime - h * 3600) / 60;
+
+ return bprintf("%dh %dm", h, m);
+}
diff --git a/components/OpenBSD/uptime.c b/components/OpenBSD/uptime.c
@@ -0,0 +1,40 @@
+/* See LICENSE file for copyright and license details. */
+#include <errno.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/sysctl.h>
+#include <sys/time.h>
+
+#include "../../util.h"
+
+const char *
+uptime(void)
+{
+ int h;
+ int m;
+ int uptime = 0;
+
+ int mib[2];
+ size_t size;
+ time_t now;
+ struct timeval boottime;
+
+ time(&now);
+
+ mib[0] = CTL_KERN;
+ mib[1] = KERN_BOOTTIME;
+
+ size = sizeof(boottime);
+
+ if (sysctl(mib, 2, &boottime, &size, NULL, 0) != -1)
+ uptime = now - boottime.tv_sec;
+ else {
+ fprintf(stderr, "sysctl 'KERN_BOOTTIME': %s\n", strerror(errno));
+ return NULL;
+ }
+
+ h = uptime / 3600;
+ m = (uptime - h * 3600) / 60;
+
+ return bprintf("%dh %dm", h, m);
+}
diff --git a/components/uptime.c b/components/uptime.c
@@ -1,63 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-#include <errno.h>
-#include <stdio.h>
-#include <string.h>
-#if defined(__linux__)
-#include <sys/sysinfo.h>
-#elif defined(__OpenBSD__)
-#include <sys/sysctl.h>
-#include <sys/time.h>
-#endif
-
-#include "../util.h"
-
-#if defined(__linux__)
-const char *
-uptime(void)
-{
- int h;
- int m;
- int uptime = 0;
- struct sysinfo info;
-
- sysinfo(&info);
- uptime = info.uptime;
-
- h = uptime / 3600;
- m = (uptime - h * 3600) / 60;
-
- return bprintf("%dh %dm", h, m);
-}
-#elif defined(__OpenBSD__)
-const char *
-uptime(void)
-{
- int h;
- int m;
- int uptime = 0;
-
- int mib[2];
- size_t size;
- time_t now;
- struct timeval boottime;
-
- time(&now);
-
- mib[0] = CTL_KERN;
- mib[1] = KERN_BOOTTIME;
-
- size = sizeof(boottime);
-
- if (sysctl(mib, 2, &boottime, &size, NULL, 0) != -1)
- uptime = now - boottime.tv_sec;
- else {
- fprintf(stderr, "sysctl 'KERN_BOOTTIME': %s\n", strerror(errno));
- return NULL;
- }
-
- h = uptime / 3600;
- m = (uptime - h * 3600) / 60;
-
- return bprintf("%dh %dm", h, m);
-}
-#endif