const char *
battery_remaining(const char *bat)
{
- uint64_t charge_now, current_now, m, h;
+ uintmax_t charge_now, current_now, m, h;
double timeleft;
char path[PATH_MAX], state[12];
if (!pick(bat, "/sys/class/power_supply/%s/charge_now",
"/sys/class/power_supply/%s/energy_now",
path, sizeof(path)) ||
- pscanf(path, "%" PRIu64, &charge_now) < 0) {
+ pscanf(path, "%" PRIuMAX, &charge_now) < 0) {
return NULL;
}
if (!pick(bat, "/sys/class/power_supply/%s/current_now",
"/sys/class/power_supply/%s/power_now", path,
sizeof(path)) ||
- pscanf(path, "%" PRIu64, ¤t_now) < 0) {
+ pscanf(path, "%" PRIuMAX, ¤t_now) < 0) {
return NULL;
}
h = timeleft;
m = (timeleft - (double)h) * 60;
- return bprintf("%" PRIu64 "h %" PRIu64 "m", h, m);
+ return bprintf("%" PRIuMAX "h %" PRIuMAX "m", h, m);
}
return "";
const char *
cpu_freq(void)
{
- uint64_t freq;
+ uintmax_t freq;
/* in kHz */
if (pscanf("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq",
- "%"SCNu64, &freq) != 1) {
+ "%" PRIuMAX, &freq) != 1) {
return NULL;
}
cpu_perc(void)
{
int mib[2];
- static uint64_t a[CPUSTATES];
- uint64_t b[CPUSTATES];
+ static uintmax_t a[CPUSTATES];
+ uintmax_t b[CPUSTATES];
size_t size;
mib[0] = CTL_KERN;
const char *
entropy(void)
{
- uint64_t num;
+ uintmax_t num;
if (pscanf("/proc/sys/kernel/random/entropy_avail",
- "%" PRIu64, &num) != 1) {
+ "%" PRIuMAX, &num) != 1) {
return NULL;
}
- return bprintf("%" PRIu64, num);
+ return bprintf("%" PRIuMAX, num);
}
#elif defined(__OpenBSD__)
const char *
#include "../util.h"
#if defined(__linux__)
- #include <stdint.h>
+ #include <inttypes.h>
const char *
netspeed_rx(const char *interface)
{
- uint64_t oldrxbytes;
- static uint64_t rxbytes;
+ uintmax_t oldrxbytes;
+ static uintmax_t rxbytes;
extern const unsigned int interval;
char path[PATH_MAX];
interface) < 0) {
return NULL;
}
- if (pscanf(path, "%llu", &rxbytes) != 1) {
+ if (pscanf(path, "%" PRIuMAX, &rxbytes) != 1) {
return NULL;
}
if (oldrxbytes == 0) {
const char *
netspeed_tx(const char *interface)
{
- uint64_t oldtxbytes;
- static uint64_t txbytes;
+ uintmax_t oldtxbytes;
+ static uintmax_t txbytes;
extern const unsigned int interval;
char path[PATH_MAX];
interface) < 0) {
return NULL;
}
- if (pscanf(path, "%llu", &txbytes) != 1) {
+ if (pscanf(path, "%" PRIuMAX, &txbytes) != 1) {
return NULL;
}
if (oldtxbytes == 0) {
{
struct ifaddrs *ifal, *ifa;
struct if_data *ifd;
- uint64_t oldrxbytes;
- static uint64_t rxbytes;
+ uintmax_t oldrxbytes;
+ static uintmax_t rxbytes;
extern const unsigned int interval;
int if_ok = 0;
{
struct ifaddrs *ifal, *ifa;
struct if_data *ifd;
- uint64_t oldtxbytes;
- static uint64_t txbytes;
+ uintmax_t oldtxbytes;
+ static uintmax_t txbytes;
extern const unsigned int interval;
int if_ok = 0;
const char *
ram_free(void)
{
- uint64_t free;
+ uintmax_t free;
if (pscanf("/proc/meminfo",
- "MemTotal: %" PRIu64 " kB\n"
- "MemFree: %" PRIu64 " kB\n"
- "MemAvailable: %" PRIu64 " kB\n",
+ "MemTotal: %" PRIuMAX " kB\n"
+ "MemFree: %" PRIuMAX " kB\n"
+ "MemAvailable: %" PRIuMAX " kB\n",
&free, &free, &free) != 3) {
return NULL;
}
const char *
ram_perc(void)
{
- uint64_t total, free, buffers, cached;
+ uintmax_t total, free, buffers, cached;
if (pscanf("/proc/meminfo",
- "MemTotal: %" PRIu64 " kB\n"
- "MemFree: %" PRIu64 " kB\n"
- "MemAvailable: %" PRIu64 " kB\nBuffers: %ld kB\n"
- "Cached: %" PRIu64 " kB\n",
+ "MemTotal: %" PRIuMAX " kB\n"
+ "MemFree: %" PRIuMAX " kB\n"
+ "MemAvailable: %" PRIuMAX " kB\nBuffers: %ld kB\n"
+ "Cached: %" PRIuMAX " kB\n",
&total, &free, &buffers, &buffers, &cached) != 5) {
return NULL;
}
const char *
ram_total(void)
{
- uint64_t total;
+ uintmax_t total;
- if (pscanf("/proc/meminfo", "MemTotal: %" PRIu64 " kB\n",
+ if (pscanf("/proc/meminfo", "MemTotal: %" PRIuMAX " kB\n",
&total) != 1) {
return NULL;
}
const char *
ram_used(void)
{
- uint64_t total, free, buffers, cached;
+ uintmax_t total, free, buffers, cached;
if (pscanf("/proc/meminfo",
- "MemTotal: %" PRIu64 " kB\n"
- "MemFree: %" PRIu64 " kB\n"
- "MemAvailable: %" PRIu64 " kB\nBuffers: %" PRIu64 " kB\n"
- "Cached: %" PRIu64 " kB\n",
+ "MemTotal: %" PRIuMAX " kB\n"
+ "MemFree: %" PRIuMAX " kB\n"
+ "MemAvailable: %" PRIuMAX " kB\nBuffers: %" PRIuMAX " kB\n"
+ "Cached: %" PRIuMAX " kB\n",
&total, &free, &buffers, &buffers, &cached) != 5) {
return NULL;
}
const char *
temp(const char *file)
{
- uint64_t temp;
+ uintmax_t temp;
- if(pscanf(file, "%" PRIu64, &temp) != 1) {
+ if(pscanf(file, "%" PRIuMAX, &temp) != 1) {
return NULL;
}
- return bprintf("%" PRIu64, temp / 1000);
+ return bprintf("%" PRIuMAX, temp / 1000);
}
#elif defined(__OpenBSD__)
#include <stdio.h>
const char *
uptime(void)
{
- uint64_t h, m;
+ uintmax_t h, m;
struct timespec uptime;
if (clock_gettime(CLOCK_BOOTTIME, &uptime) < 0) {
h = uptime.tv_sec / 3600;
m = uptime.tv_sec % 3600 / 60;
- return bprintf("%" PRIu64 "h %" PRIu64 "m", h, m);
+ return bprintf("%" PRIuMAX "h %" PRIuMAX "m", h, m);
}
}
const char *
-fmt_human(uint64_t num, int base)
+fmt_human(uintmax_t num, int base)
{
double scaled;
size_t i, prefixlen;
int esnprintf(char *str, size_t size, const char *fmt, ...);
const char *bprintf(const char *fmt, ...);
-const char *fmt_human(uint64_t num, int base);
+const char *fmt_human(uintmax_t num, int base);
int pscanf(const char *path, const char *fmt, ...);