[hackers] [slstatus] do not rely on obsolete feature || NRK

From: <git_AT_suckless.org>
Date: Wed, 26 Oct 2022 23:34:26 +0200 (CEST)

commit 0c2b3e5b5c499b1de566fd4bef49c5e6b5254d1a
Author: NRK <nrk_AT_disroot.org>
AuthorDate: Thu Oct 27 02:16:05 2022 +0600
Commit: drkhsh <me_AT_drkhsh.at>
CommitDate: Wed Oct 26 23:32:43 2022 +0200

    do not rely on obsolete feature
    
    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.

diff --git a/components/cpu.c b/components/cpu.c
index a5fabf8..254f047 100644
--- a/components/cpu.c
+++ b/components/cpu.c
_AT_@ -8,7 +8,7 @@
 
 #if defined(__linux__)
         const char *
- cpu_freq(void)
+ cpu_freq(const char *unused)
         {
                 uintmax_t freq;
 
_AT_@ -22,7 +22,7 @@
         }
 
         const char *
- cpu_perc(void)
+ cpu_perc(const char *unused)
         {
                 static long double a[7];
                 long double b[7], sum;
_AT_@ -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;
_AT_@ -75,7 +75,7 @@
         }
 
         const char *
- cpu_perc(void)
+ cpu_perc(const char *unused)
         {
                 int mib[2];
                 static uintmax_t a[CPUSTATES];
_AT_@ -115,7 +115,7 @@
         #include <devstat.h>
 
         const char *
- cpu_freq(void)
+ cpu_freq(const char *unused)
         {
                 int freq;
                 size_t size;
_AT_@ -132,7 +132,7 @@
         }
 
         const char *
- cpu_perc(void)
+ cpu_perc(const char *unused)
         {
                 size_t size;
                 static long a[CPUSTATES];
diff --git a/components/entropy.c b/components/entropy.c
index cf60bc3..0544749 100644
--- a/components/entropy.c
+++ b/components/entropy.c
_AT_@ -7,7 +7,7 @@
         #include "../util.h"
 
         const char *
- entropy(void)
+ entropy(const char *unused)
         {
                 uintmax_t num;
 
_AT_@ -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";
diff --git a/components/hostname.c b/components/hostname.c
index 8627a88..f04a913 100644
--- a/components/hostname.c
+++ b/components/hostname.c
_AT_@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-hostname(void)
+hostname(const char *unused)
 {
         if (gethostname(buf, sizeof(buf)) < 0) {
                 warn("gethostbyname:");
diff --git a/components/kernel_release.c b/components/kernel_release.c
index 76a3827..e21fefe 100644
--- a/components/kernel_release.c
+++ b/components/kernel_release.c
_AT_@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-kernel_release(void)
+kernel_release(const char *unused)
 {
         struct utsname udata;
 
diff --git a/components/keymap.c b/components/keymap.c
index 87036db..2a99474 100644
--- a/components/keymap.c
+++ b/components/keymap.c
_AT_@ -47,7 +47,7 @@ get_layout(char *syms, int grp_num)
 }
 
 const char *
-keymap(void)
+keymap(const char *unused)
 {
         Display *dpy;
         XkbDescRec *desc;
diff --git a/components/load_avg.c b/components/load_avg.c
index 2b523e7..ab33fa3 100644
--- a/components/load_avg.c
+++ b/components/load_avg.c
_AT_@ -6,7 +6,7 @@
 #include "../slstatus.h"
 
 const char *
-load_avg(void)
+load_avg(const char *unused)
 {
         double avgs[3];
 
diff --git a/components/ram.c b/components/ram.c
index 3fa78af..d90b107 100644
--- a/components/ram.c
+++ b/components/ram.c
_AT_@ -8,7 +8,7 @@
         #include <stdint.h>
 
         const char *
- ram_free(void)
+ ram_free(const char *unused)
         {
                 uintmax_t free;
 
_AT_@ -24,7 +24,7 @@
         }
 
         const char *
- ram_perc(void)
+ ram_perc(const char *unused)
         {
                 uintmax_t total, free, buffers, cached;
 
_AT_@ -47,7 +47,7 @@
         }
 
         const char *
- ram_total(void)
+ ram_total(const char *unused)
         {
                 uintmax_t total;
 
_AT_@ -60,7 +60,7 @@
         }
 
         const char *
- ram_used(void)
+ ram_used(const char *unused)
         {
                 uintmax_t total, free, buffers, cached;
 
_AT_@ -102,7 +102,7 @@
         }
 
         const char *
- ram_free(void)
+ ram_free(const char *unused)
         {
                 struct uvmexp uvmexp;
                 int free_pages;
_AT_@ -117,7 +117,7 @@
         }
 
         const char *
- ram_perc(void)
+ ram_perc(const char *unused)
         {
                 struct uvmexp uvmexp;
                 int percent;
_AT_@ -131,7 +131,7 @@
         }
 
         const char *
- ram_total(void)
+ ram_total(const char *unused)
         {
                 struct uvmexp uvmexp;
 
_AT_@ -145,7 +145,7 @@
         }
 
         const char *
- ram_used(void)
+ ram_used(const char *unused)
         {
                 struct uvmexp uvmexp;
 
_AT_@ -164,7 +164,7 @@
         #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;
_AT_@ -178,7 +178,7 @@
         }
 
         const char *
- ram_total(void) {
+ ram_total(const char *unused) {
                 unsigned int npages;
                 size_t len;
 
_AT_@ -191,7 +191,7 @@
         }
 
         const char *
- ram_perc(void) {
+ ram_perc(const char *unused) {
                 unsigned int npages;
                 unsigned int active;
                 size_t len;
_AT_@ -209,7 +209,7 @@
         }
 
         const char *
- ram_used(void) {
+ ram_used(const char *unused) {
                 unsigned int active;
                 size_t len;
 
diff --git a/components/swap.c b/components/swap.c
index 98983ee..2e8a6fb 100644
--- a/components/swap.c
+++ b/components/swap.c
_AT_@ -59,7 +59,7 @@
         }
 
         const char *
- swap_free(void)
+ swap_free(const char *unused)
         {
                 long free;
 
_AT_@ -71,7 +71,7 @@
         }
 
         const char *
- swap_perc(void)
+ swap_perc(const char *unused)
         {
                 long total, free, cached;
 
_AT_@ -83,7 +83,7 @@
         }
 
         const char *
- swap_total(void)
+ swap_total(const char *unused)
         {
                 long total;
 
_AT_@ -95,7 +95,7 @@
         }
 
         const char *
- swap_used(void)
+ swap_used(const char *unused)
         {
                 long total, free, cached;
 
_AT_@ -148,7 +148,7 @@
         }
 
         const char *
- swap_free(void)
+ swap_free(const char *unused)
         {
                 int total, used;
 
_AT_@ -160,7 +160,7 @@
         }
 
         const char *
- swap_perc(void)
+ swap_perc(const char *unused)
         {
                 int total, used;
 
_AT_@ -176,7 +176,7 @@
         }
 
         const char *
- swap_total(void)
+ swap_total(const char *unused)
         {
                 int total, used;
 
_AT_@ -188,7 +188,7 @@
         }
 
         const char *
- swap_used(void)
+ swap_used(const char *unused)
         {
                 int total, used;
 
_AT_@ -226,7 +226,7 @@
         }
 
         const char *
- swap_free(void)
+ swap_free(const char *unused)
         {
                 struct kvm_swap swap_info[1];
                 long used, total;
_AT_@ -241,7 +241,7 @@
         }
 
         const char *
- swap_perc(void)
+ swap_perc(const char *unused)
         {
                 struct kvm_swap swap_info[1];
                 long used, total;
_AT_@ -256,7 +256,7 @@
         }
 
         const char *
- swap_total(void)
+ swap_total(const char *unused)
         {
                 struct kvm_swap swap_info[1];
                 long total;
_AT_@ -270,7 +270,7 @@
         }
 
         const char *
- swap_used(void)
+ swap_used(const char *unused)
         {
                 struct kvm_swap swap_info[1];
                 long used;
diff --git a/components/uptime.c b/components/uptime.c
index fc3d204..99d1eda 100644
--- a/components/uptime.c
+++ b/components/uptime.c
_AT_@ -15,7 +15,7 @@
 #endif
 
 const char *
-uptime(void)
+uptime(const char *unused)
 {
         char warn_buf[256];
         uintmax_t h, m;
diff --git a/components/user.c b/components/user.c
index fbe6814..770f5af 100644
--- a/components/user.c
+++ b/components/user.c
_AT_@ -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;
 
_AT_@ -27,7 +27,7 @@ username(void)
 }
 
 const char *
-uid(void)
+uid(const char *unused)
 {
         return bprintf("%d", geteuid());
 }
diff --git a/config.mk b/config.mk
index 6cce683..ead1859 100644
--- a/config.mk
+++ b/config.mk
_AT_@ -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
diff --git a/slstatus.c b/slstatus.c
index 64da5cb..8fe5b44 100644
--- a/slstatus.c
+++ b/slstatus.c
_AT_@ -12,7 +12,7 @@
 #include "util.h"
 
 struct arg {
- const char *(*func)();
+ const char *(*func)(const char *);
         const char *fmt;
         const char *args;
 };
diff --git a/slstatus.h b/slstatus.h
index 362ca7c..95e52ce 100644
--- a/slstatus.h
+++ b/slstatus.h
_AT_@ -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);
_AT_@ -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);
_AT_@ -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);
_AT_@ -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);
Received on Wed Oct 26 2022 - 23:34:26 CEST

This archive was generated by hypermail 2.3.0 : Wed Oct 26 2022 - 23:36:35 CEST