do not rely on obsolete feature
authorNRK <nrk@disroot.org>
Wed, 26 Oct 2022 20:16:05 +0000 (02:16 +0600)
committerdrkhsh <me@drkhsh.at>
Wed, 26 Oct 2022 21:32:43 +0000 (23:32 +0200)
function prototype with unspecified argument is obsolete since c99.

additionally some of these function which don't take any argument were
being called with a `const char *` arg, which is UB.

fix both these issues by declararing ALL the components to accept a
`const char *`, and name the arg "unused" if it's meant to be ignored.

13 files changed:
components/cpu.c
components/entropy.c
components/hostname.c
components/kernel_release.c
components/keymap.c
components/load_avg.c
components/ram.c
components/swap.c
components/uptime.c
components/user.c
config.mk
slstatus.c
slstatus.h

index a5fabf8a8555e5247521ee3aec0e2304ca1967fe..254f047623a32c55c8d7f826ad46e6835dcd34cb 100644 (file)
@@ -8,7 +8,7 @@
 
 #if defined(__linux__)
        const char *
-       cpu_freq(void)
+       cpu_freq(const char *unused)
        {
                uintmax_t freq;
 
@@ -22,7 +22,7 @@
        }
 
        const char *
-       cpu_perc(void)
+       cpu_perc(const char *unused)
        {
                static long double a[7];
                long double b[7], sum;
@@ -55,7 +55,7 @@
        #include <sys/sysctl.h>
 
        const char *
-       cpu_freq(void)
+       cpu_freq(const char *unused)
        {
                int freq, mib[2];
                size_t size;
@@ -75,7 +75,7 @@
        }
 
        const char *
-       cpu_perc(void)
+       cpu_perc(const char *unused)
        {
                int mib[2];
                static uintmax_t a[CPUSTATES];
        #include <devstat.h>
 
        const char *
-       cpu_freq(void)
+       cpu_freq(const char *unused)
        {
                int freq;
                size_t size;
        }
 
        const char *
-       cpu_perc(void)
+       cpu_perc(const char *unused)
        {
                size_t size;
                static long a[CPUSTATES];
index cf60bc3261587a841fc7800d943e3cae0fdd3918..0544749b82a37ffa496266460a38b54fbad590d7 100644 (file)
@@ -7,7 +7,7 @@
        #include "../util.h"
 
        const char *
-       entropy(void)
+       entropy(const char *unused)
        {
                uintmax_t num;
 
@@ -20,7 +20,7 @@
        }
 #elif defined(__OpenBSD__) | defined(__FreeBSD__)
        const char *
-       entropy(void)
+       entropy(const char *unused)
        {
                /* Unicode Character 'INFINITY' (U+221E) */
                return "\xe2\x88\x9e";
index 8627a8850be939218225743d6e3cdab76637aab4..f04a9137381b01588c11cceee103bb7d7fcf937e 100644 (file)
@@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-hostname(void)
+hostname(const char *unused)
 {
        if (gethostname(buf, sizeof(buf)) < 0) {
                warn("gethostbyname:");
index 76a3827754778229db76eeb760537647f13c922d..e21fefe0f9a044add219008e1ee18fbb4a36a6b8 100644 (file)
@@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-kernel_release(void)
+kernel_release(const char *unused)
 {
        struct utsname udata;
 
index 87036dbb48666249f142bf429e9f21b54af0910c..2a99474756eaba86626a807c98a191f0f56d6514 100644 (file)
@@ -47,7 +47,7 @@ get_layout(char *syms, int grp_num)
 }
 
 const char *
-keymap(void)
+keymap(const char *unused)
 {
        Display *dpy;
        XkbDescRec *desc;
index 2b523e7e19fde7b4e6766313feaa395208b2cc6e..ab33fa38abb2cdbc507f3031a1ea0d381a3b68ba 100644 (file)
@@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-load_avg(void)
+load_avg(const char *unused)
 {
        double avgs[3];
 
index 3fa78afddb60aa08ff0517c9f2458cd9f66b63a8..d90b107461c473e49f9138777dbfb9d5cde176e4 100644 (file)
@@ -8,7 +8,7 @@
        #include <stdint.h>
 
        const char *
-       ram_free(void)
+       ram_free(const char *unused)
        {
                uintmax_t free;
 
@@ -24,7 +24,7 @@
        }
 
        const char *
-       ram_perc(void)
+       ram_perc(const char *unused)
        {
                uintmax_t total, free, buffers, cached;
 
@@ -47,7 +47,7 @@
        }
 
        const char *
-       ram_total(void)
+       ram_total(const char *unused)
        {
                uintmax_t total;
 
@@ -60,7 +60,7 @@
        }
 
        const char *
-       ram_used(void)
+       ram_used(const char *unused)
        {
                uintmax_t total, free, buffers, cached;
 
        }
 
        const char *
-       ram_free(void)
+       ram_free(const char *unused)
        {
                struct uvmexp uvmexp;
                int free_pages;
        }
 
        const char *
-       ram_perc(void)
+       ram_perc(const char *unused)
        {
                struct uvmexp uvmexp;
                int percent;
        }
 
        const char *
-       ram_total(void)
+       ram_total(const char *unused)
        {
                struct uvmexp uvmexp;
 
        }
 
        const char *
-       ram_used(void)
+       ram_used(const char *unused)
        {
                struct uvmexp uvmexp;
 
        #include <vm/vm_param.h>
 
        const char *
-       ram_free(void) {
+       ram_free(const char *unused) {
                struct vmtotal vm_stats;
                int mib[] = {CTL_VM, VM_TOTAL};
                size_t len;
        }
 
        const char *
-       ram_total(void) {
+       ram_total(const char *unused) {
                unsigned int npages;
                size_t len;
 
        }
 
        const char *
-       ram_perc(void) {
+       ram_perc(const char *unused) {
                unsigned int npages;
                unsigned int active;
                size_t len;
        }
 
        const char *
-       ram_used(void) {
+       ram_used(const char *unused) {
                unsigned int active;
                size_t len;
 
index 98983eed1cfb15981c3b448c54687d36e9d473ee..2e8a6fba98cf2ded8fd56e7d17dcfe600eeb1f8d 100644 (file)
@@ -59,7 +59,7 @@
        }
 
        const char *
-       swap_free(void)
+       swap_free(const char *unused)
        {
                long free;
 
@@ -71,7 +71,7 @@
        }
 
        const char *
-       swap_perc(void)
+       swap_perc(const char *unused)
        {
                long total, free, cached;
 
@@ -83,7 +83,7 @@
        }
 
        const char *
-       swap_total(void)
+       swap_total(const char *unused)
        {
                long total;
 
@@ -95,7 +95,7 @@
        }
 
        const char *
-       swap_used(void)
+       swap_used(const char *unused)
        {
                long total, free, cached;
 
        }
 
        const char *
-       swap_free(void)
+       swap_free(const char *unused)
        {
                int total, used;
 
        }
 
        const char *
-       swap_perc(void)
+       swap_perc(const char *unused)
        {
                int total, used;
 
        }
 
        const char *
-       swap_total(void)
+       swap_total(const char *unused)
        {
                int total, used;
 
        }
 
        const char *
-       swap_used(void)
+       swap_used(const char *unused)
        {
                int total, used;
 
        }
 
        const char *
-       swap_free(void)
+       swap_free(const char *unused)
        {
                struct kvm_swap swap_info[1];
                long used, total;
        }
 
        const char *
-       swap_perc(void)
+       swap_perc(const char *unused)
        {
                struct kvm_swap swap_info[1];
                long used, total;
        }
 
        const char *
-       swap_total(void)
+       swap_total(const char *unused)
        {
                struct kvm_swap swap_info[1];
                long total;
        }
 
        const char *
-       swap_used(void)
+       swap_used(const char *unused)
        {
                struct kvm_swap swap_info[1];
                long used;
index fc3d204757927f82f0591c82d24fdea1e6b99b32..99d1edadc754fa251ad14e7c5df7d8e7f6908e5a 100644 (file)
@@ -15,7 +15,7 @@
 #endif
 
 const char *
-uptime(void)
+uptime(const char *unused)
 {
        char warn_buf[256];
        uintmax_t h, m;
index fbe681467cc6e62e17f31912ea53dede7f7f9ee8..770f5afe90177e12f5d1db1e73d4b89354d3be17 100644 (file)
@@ -8,13 +8,13 @@
 #include "../slstatus.h"
 
 const char *
-gid(void)
+gid(const char *unused)
 {
        return bprintf("%d", getgid());
 }
 
 const char *
-username(void)
+username(const char *unused)
 {
        struct passwd *pw;
 
@@ -27,7 +27,7 @@ username(void)
 }
 
 const char *
-uid(void)
+uid(const char *unused)
 {
        return bprintf("%d", geteuid());
 }
index 6cce6833bf1ced210a8acbf33fec26d90b35304d..ead1859fb7ef9494a83779421e66c429b8c4d670 100644 (file)
--- a/config.mk
+++ b/config.mk
@@ -12,7 +12,7 @@ X11LIB = /usr/X11R6/lib
 
 # flags
 CPPFLAGS = -I$(X11INC) -D_DEFAULT_SOURCE
-CFLAGS   = -std=c99 -pedantic -Wall -Wextra -Os
+CFLAGS   = -std=c99 -pedantic -Wall -Wextra -Wno-unused-parameter -Os
 LDFLAGS  = -L$(X11LIB) -s
 # OpenBSD: add -lsndio
 # FreeBSD: add -lkvm -lsndio
index 64da5cb6aba41ae184ada5a631a190696987fed0..8fe5b44a1323dc48d6e5fa56ae73da7473042835 100644 (file)
@@ -12,7 +12,7 @@
 #include "util.h"
 
 struct arg {
-       const char *(*func)();
+       const char *(*func)(const char *);
        const char *fmt;
        const char *args;
 };
index 362ca7c2980c4111d3cc2c26b755be845787c914..95e52ce7ed255ae52446b59882623485572ea38c 100644 (file)
@@ -6,8 +6,8 @@ const char *battery_state(const char *);
 const char *battery_remaining(const char *);
 
 /* cpu */
-const char *cpu_freq(void);
-const char *cpu_perc(void);
+const char *cpu_freq(const char *unused);
+const char *cpu_perc(const char *unused);
 
 /* datetime */
 const char *datetime(const char *fmt);
@@ -19,26 +19,26 @@ const char *disk_total(const char *path);
 const char *disk_used(const char *path);
 
 /* entropy */
-const char *entropy(void);
+const char *entropy(const char *unused);
 
 /* hostname */
-const char *hostname(void);
+const char *hostname(const char *unused);
 
 /* ip */
 const char *ipv4(const char *interface);
 const char *ipv6(const char *interface);
 
 /* kernel_release */
-const char *kernel_release(void);
+const char *kernel_release(const char *unused);
 
 /* keyboard_indicators */
 const char *keyboard_indicators(const char *fmt);
 
 /* keymap */
-const char *keymap(void);
+const char *keymap(const char *unused);
 
 /* load_avg */
-const char *load_avg(void);
+const char *load_avg(const char *unused);
 
 /* netspeeds */
 const char *netspeed_rx(const char *interface);
@@ -48,10 +48,10 @@ const char *netspeed_tx(const char *interface);
 const char *num_files(const char *path);
 
 /* ram */
-const char *ram_free(void);
-const char *ram_perc(void);
-const char *ram_total(void);
-const char *ram_used(void);
+const char *ram_free(const char *unused);
+const char *ram_perc(const char *unused);
+const char *ram_total(const char *unused);
+const char *ram_used(const char *unused);
 
 /* run_command */
 const char *run_command(const char *cmd);
@@ -60,21 +60,21 @@ const char *run_command(const char *cmd);
 const char *separator(const char *separator);
 
 /* swap */
-const char *swap_free(void);
-const char *swap_perc(void);
-const char *swap_total(void);
-const char *swap_used(void);
+const char *swap_free(const char *unused);
+const char *swap_perc(const char *unused);
+const char *swap_total(const char *unused);
+const char *swap_used(const char *unused);
 
 /* temperature */
 const char *temp(const char *);
 
 /* uptime */
-const char *uptime(void);
+const char *uptime(const char *unused);
 
 /* user */
-const char *gid(void);
-const char *username(void);
-const char *uid(void);
+const char *gid(const char *unused);
+const char *username(const char *unused);
+const char *uid(const char *unused);
 
 /* volume */
 const char *vol_perc(const char *card);