X-Git-Url: https://git.xinqibao.xyz/slstatus.git/blobdiff_plain/dcc0cddee4457d88528b75bab2d6705ff06770d9..237a7720b710ade7aa8f2b852b43100de872248f:/slstatus.c?ds=sidebyside

diff --git a/slstatus.c b/slstatus.c
index 174a17c..34fd951 100644
--- a/slstatus.c
+++ b/slstatus.c
@@ -1,4 +1,11 @@
-/* See LICENSE file for copyright and license details. */
+/*
+ * Copyright (C) 2016, drkhsh
+ * Copyright (C) 2016, Ali H. Fardan (Raiz) <raiz@firemail.cc>
+ * see LICENSE for copyright details
+ */
+
+#define _GNU_SOURCE
+#define VERSION "2.0"
 
 #include <alsa/asoundlib.h>
 #include <err.h>
@@ -37,34 +44,34 @@ struct arg {
 	const char *args;
 };
 
-static char *smprintf(const char *, ...);
-static char *battery_perc(const char *);
-static char *battery_state(const char *);
+static char *smprintf(const char *fmt, ...);
+static char *battery_perc(const char *bat);
+static char *battery_state(const char *bat);
 static char *cpu_perc(void);
-static char *datetime(const char *);
-static char *disk_free(const char *);
-static char *disk_perc(const char *);
-static char *disk_total(const char *);
-static char *disk_used(const char *);
+static char *datetime(const char *fmt);
+static char *disk_free(const char *mnt);
+static char *disk_perc(const char *mnt);
+static char *disk_total(const char *mnt);
+static char *disk_used(const char *mnt);
 static char *entropy(void);
 static char *gid(void);
 static char *hostname(void);
-static char *ip(const char *);
+static char *ip(const char *iface);
 static char *load_avg(void);
 static char *ram_free(void);
 static char *ram_perc(void);
 static char *ram_used(void);
 static char *ram_total(void);
-static char *run_command(const char *);
-static char *temp(const char *);
+static char *run_command(const char *cmd);
+static char *temp(const char *file);
 static char *uid(void);
 static char *uptime(void);
 static char *username(void);
-static char *vol_perc(const char *);
-static char *wifi_perc(const char *);
-static char *wifi_essid(const char *);
-static void set_status(const char *);
-static void sighandler(const int);
+static char *vol_perc(const char *card);
+static char *wifi_perc(const char *iface);
+static char *wifi_essid(const char *iface);
+static void set_status(const char *str);
+static void sighandler(const int signo);
 static void usage(void);
 
 char *argv0;
@@ -88,10 +95,8 @@ smprintf(const char *fmt, ...)
 	va_end(ap);
 
 	ret = malloc(++len);
-	if (ret == NULL) {
-		warn("Malloc failed.");
-		return "n/a";
-	}
+	if (ret == NULL)
+		err(1, "malloc");
 
 	va_start(ap, fmt);
 	vsnprintf(ret, len, fmt, ap);
@@ -592,7 +597,7 @@ sighandler(const int signo)
 static void
 usage(void)
 {
-	fprintf(stderr, "usage: %s [-dho]\n", argv0);
+	fprintf(stderr, "usage: %s [-dhov]\n", argv0);
 	exit(1);
 }
 
@@ -612,6 +617,9 @@ main(int argc, char *argv[])
 		case 'o':
 			oflag = 1;
 			break;
+		case 'v':
+			printf("slstatus %s (C) 2016 slstatus engineers\n", VERSION);
+			return 0;
 		default:
 			usage();
 	} ARGEND