Format error messages properly
Make use of strerror(errno) and format all errors equally: function ['parameters']: error message
This commit is contained in:
		@@ -1,5 +1,7 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
#include <limits.h>
 | 
					#include <limits.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
@@ -28,12 +30,12 @@ battery_perc(const char *bat)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fd = open("/dev/apm", O_RDONLY);
 | 
						fd = open("/dev/apm", O_RDONLY);
 | 
				
			||||||
	if (fd < 0) {
 | 
						if (fd < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /dev/apm");
 | 
							fprintf(stderr, "open '/dev/apm': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (ioctl(fd, APM_IOC_GETPOWER, &apm_info) < 0) {
 | 
						if (ioctl(fd, APM_IOC_GETPOWER, &apm_info) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get battery info");
 | 
							fprintf(stderr, "ioctl 'APM_IOC_GETPOWER': %s\n", strerror(errno));
 | 
				
			||||||
		close(fd);
 | 
							close(fd);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,7 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#include <sys/statvfs.h>
 | 
					#include <sys/statvfs.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "../util.h"
 | 
					#include "../util.h"
 | 
				
			||||||
@@ -10,7 +12,7 @@ disk_free(const char *mnt)
 | 
				
			|||||||
	struct statvfs fs;
 | 
						struct statvfs fs;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (statvfs(mnt, &fs) < 0) {
 | 
						if (statvfs(mnt, &fs) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get filesystem info");
 | 
							fprintf(stderr, "statvfs '%s': %s\n", mnt, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -24,7 +26,7 @@ disk_perc(const char *mnt)
 | 
				
			|||||||
	struct statvfs fs;
 | 
						struct statvfs fs;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (statvfs(mnt, &fs) < 0) {
 | 
						if (statvfs(mnt, &fs) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get filesystem info");
 | 
							fprintf(stderr, "statvfs '%s': %s\n", mnt, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -39,7 +41,7 @@ disk_total(const char *mnt)
 | 
				
			|||||||
	struct statvfs fs;
 | 
						struct statvfs fs;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (statvfs(mnt, &fs) < 0) {
 | 
						if (statvfs(mnt, &fs) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get filesystem info");
 | 
							fprintf(stderr, "statvfs '%s': %s\n", mnt, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -52,7 +54,7 @@ disk_used(const char *mnt)
 | 
				
			|||||||
	struct statvfs fs;
 | 
						struct statvfs fs;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (statvfs(mnt, &fs) < 0) {
 | 
						if (statvfs(mnt, &fs) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get filesystem info");
 | 
							fprintf(stderr, "statvfs '%s': %s\n", mnt, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,7 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#include <unistd.h>
 | 
					#include <unistd.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "../util.h"
 | 
					#include "../util.h"
 | 
				
			||||||
@@ -8,7 +10,7 @@ const char *
 | 
				
			|||||||
hostname(void)
 | 
					hostname(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (gethostname(buf, sizeof(buf)) == -1) {
 | 
						if (gethostname(buf, sizeof(buf)) == -1) {
 | 
				
			||||||
		fprintf(stderr, "gethostbyname failed");
 | 
							fprintf(stderr, "gethostbyname: %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <ifaddrs.h>
 | 
					#include <ifaddrs.h>
 | 
				
			||||||
#include <netdb.h>
 | 
					#include <netdb.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
@@ -15,7 +16,7 @@ ipv4(const char *iface)
 | 
				
			|||||||
	char host[NI_MAXHOST];
 | 
						char host[NI_MAXHOST];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (getifaddrs(&ifaddr) == -1) {
 | 
						if (getifaddrs(&ifaddr) == -1) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get IPv4 address for interface %s", iface);
 | 
							fprintf(stderr, "getifaddrs: %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -26,7 +27,7 @@ ipv4(const char *iface)
 | 
				
			|||||||
		s = getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in), host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);
 | 
							s = getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in), host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);
 | 
				
			||||||
		if ((strcmp(ifa->ifa_name, iface) == 0) && (ifa->ifa_addr->sa_family == AF_INET)) {
 | 
							if ((strcmp(ifa->ifa_name, iface) == 0) && (ifa->ifa_addr->sa_family == AF_INET)) {
 | 
				
			||||||
			if (s != 0) {
 | 
								if (s != 0) {
 | 
				
			||||||
				fprintf(stderr, "Failed to get IPv4 address for interface %s", iface);
 | 
									fprintf(stderr, "getnameinfo: %s\n", gai_strerror(s));
 | 
				
			||||||
				return NULL;
 | 
									return NULL;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			return bprintf("%s", host);
 | 
								return bprintf("%s", host);
 | 
				
			||||||
@@ -46,7 +47,7 @@ ipv6(const char *iface)
 | 
				
			|||||||
	char host[NI_MAXHOST];
 | 
						char host[NI_MAXHOST];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (getifaddrs(&ifaddr) == -1) {
 | 
						if (getifaddrs(&ifaddr) == -1) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get IPv6 address for interface %s", iface);
 | 
							fprintf(stderr, "getifaddrs: %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -57,7 +58,7 @@ ipv6(const char *iface)
 | 
				
			|||||||
		s = getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in6), host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);
 | 
							s = getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in6), host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);
 | 
				
			||||||
		if ((strcmp(ifa->ifa_name, iface) == 0) && (ifa->ifa_addr->sa_family == AF_INET6)) {
 | 
							if ((strcmp(ifa->ifa_name, iface) == 0) && (ifa->ifa_addr->sa_family == AF_INET6)) {
 | 
				
			||||||
			if (s != 0) {
 | 
								if (s != 0) {
 | 
				
			||||||
				fprintf(stderr, "Failed to get IPv6 address for interface %s", iface);
 | 
									fprintf(stderr, "getnameinfo: %s\n", gai_strerror(s));
 | 
				
			||||||
				return NULL;
 | 
									return NULL;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			return bprintf("%s", host);
 | 
								return bprintf("%s", host);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,8 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <sys/utsname.h>
 | 
					#include <sys/utsname.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "../util.h"
 | 
					#include "../util.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -10,6 +12,7 @@ kernel_release(void)
 | 
				
			|||||||
	struct utsname udata;
 | 
						struct utsname udata;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (uname(&udata) < 0) {
 | 
						if (uname(&udata) < 0) {
 | 
				
			||||||
 | 
							fprintf(stderr, "uname: %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -11,7 +11,7 @@ keyboard_indicators(void)
 | 
				
			|||||||
	XKeyboardState state;
 | 
						XKeyboardState state;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (dpy == NULL) {
 | 
						if (dpy == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Cannot open display");
 | 
							fprintf(stderr, "Cannot open display\n");
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	XGetKeyboardControl(dpy, &state);
 | 
						XGetKeyboardControl(dpy, &state);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -10,7 +10,7 @@ load_avg(const char *fmt)
 | 
				
			|||||||
	double avgs[3];
 | 
						double avgs[3];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (getloadavg(avgs, 3) < 0) {
 | 
						if (getloadavg(avgs, 3) < 0) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get the load avg");
 | 
							fprintf(stderr, "getloadavg: Could not obtain load average.\n");
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,5 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <dirent.h>
 | 
					#include <dirent.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
@@ -13,7 +14,7 @@ num_files(const char *dir)
 | 
				
			|||||||
	int num = 0;
 | 
						int num = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ((fd = opendir(dir)) == NULL) {
 | 
						if ((fd = opendir(dir)) == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get number of files in directory %s", dir);
 | 
							fprintf(stderr, "opendir '%s': %s\n", dir, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,5 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -12,7 +13,7 @@ run_command(const char *cmd)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = popen(cmd, "r");
 | 
						fp = popen(cmd, "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get command output for %s", cmd);
 | 
							fprintf(stderr, "popen '%s': %s\n", cmd, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	p = fgets(buf, sizeof(buf) - 1, fp);
 | 
						p = fgets(buf, sizeof(buf) - 1, fp);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -15,12 +16,12 @@ swap_free(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = fopen("/proc/meminfo", "r");
 | 
						fp = fopen("/proc/meminfo", "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /proc/meminfo");
 | 
							fprintf(stderr, "fopen '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
						if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
				
			||||||
		fprintf(stderr, "swap_free: read error");
 | 
							fprintf(stderr, "fread '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		fclose(fp);
 | 
							fclose(fp);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -47,12 +48,12 @@ swap_perc(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = fopen("/proc/meminfo", "r");
 | 
						fp = fopen("/proc/meminfo", "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /proc/meminfo");
 | 
							fprintf(stderr, "fopen '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
						if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
				
			||||||
		fprintf(stderr, "swap_perc: read error");
 | 
							fprintf(stderr, "fread '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		fclose(fp);
 | 
							fclose(fp);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -83,11 +84,11 @@ swap_total(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = fopen("/proc/meminfo", "r");
 | 
						fp = fopen("/proc/meminfo", "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /proc/meminfo");
 | 
							fprintf(stderr, "fopen '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
						if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
				
			||||||
		fprintf(stderr, "swap_total: read error");
 | 
							fprintf(stderr, "fread '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		fclose(fp);
 | 
							fclose(fp);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -110,11 +111,11 @@ swap_used(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = fopen("/proc/meminfo", "r");
 | 
						fp = fopen("/proc/meminfo", "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /proc/meminfo");
 | 
							fprintf(stderr, "fopen '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
						if ((bytes_read = fread(buf, sizeof(char), sizeof(buf) - 1, fp)) == 0) {
 | 
				
			||||||
		fprintf(stderr, "swap_used: read error");
 | 
							fprintf(stderr, "fread '/proc/meminfo': %s\n", strerror(errno));
 | 
				
			||||||
		fclose(fp);
 | 
							fclose(fp);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,7 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
#include <sys/sysinfo.h>
 | 
					#include <sys/sysinfo.h>
 | 
				
			||||||
#elif defined(__OpenBSD__)
 | 
					#elif defined(__OpenBSD__)
 | 
				
			||||||
@@ -35,8 +37,10 @@ uptime(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	if (sysctl(mib, 2, &boottime, &size, NULL, 0) != -1)
 | 
						if (sysctl(mib, 2, &boottime, &size, NULL, 0) != -1)
 | 
				
			||||||
		uptime = now - boottime.tv_sec;
 | 
							uptime = now - boottime.tv_sec;
 | 
				
			||||||
	else
 | 
						else {
 | 
				
			||||||
 | 
							fprintf(stderr, "sysctl 'KERN_BOOTTIME': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
	h = uptime / 3600;
 | 
						h = uptime / 3600;
 | 
				
			||||||
	m = (uptime - h * 3600) / 60;
 | 
						m = (uptime - h * 3600) / 60;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,8 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <pwd.h>
 | 
					#include <pwd.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#include <sys/types.h>
 | 
					#include <sys/types.h>
 | 
				
			||||||
#include <unistd.h>
 | 
					#include <unistd.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -18,7 +20,7 @@ username(void)
 | 
				
			|||||||
	struct passwd *pw = getpwuid(geteuid());
 | 
						struct passwd *pw = getpwuid(geteuid());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (pw == NULL) {
 | 
						if (pw == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get username");
 | 
							fprintf(stderr, "getpwuid '%d': %s\n", geteuid(), strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <fcntl.h>
 | 
					#include <fcntl.h>
 | 
				
			||||||
#include <sys/soundcard.h>
 | 
					#include <sys/soundcard.h>
 | 
				
			||||||
#include <sys/ioctl.h>
 | 
					#include <sys/ioctl.h>
 | 
				
			||||||
@@ -18,19 +19,19 @@ vol_perc(const char *card)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	afd = open(card, O_RDONLY | O_NONBLOCK);
 | 
						afd = open(card, O_RDONLY | O_NONBLOCK);
 | 
				
			||||||
	if (afd == -1) {
 | 
						if (afd == -1) {
 | 
				
			||||||
		fprintf(stderr, "Cannot open %s", card);
 | 
							fprintf(stderr, "open '%s': %s\n", card, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (ioctl(afd, SOUND_MIXER_READ_DEVMASK, &devmask) == -1) {
 | 
						if (ioctl(afd, SOUND_MIXER_READ_DEVMASK, &devmask) == -1) {
 | 
				
			||||||
		fprintf(stderr, "Cannot get volume for %s", card);
 | 
							fprintf(stderr, "ioctl 'SOUND_MIXER_READ_DEVMASK': %s\n", strerror(errno));
 | 
				
			||||||
		close(afd);
 | 
							close(afd);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	for (i = 0; i < LEN(vnames); i++) {
 | 
						for (i = 0; i < LEN(vnames); i++) {
 | 
				
			||||||
		if (devmask & (1 << i) && !strcmp("vol", vnames[i])) {
 | 
							if (devmask & (1 << i) && !strcmp("vol", vnames[i])) {
 | 
				
			||||||
			if (ioctl(afd, MIXER_READ(i), &v) == -1) {
 | 
								if (ioctl(afd, MIXER_READ(i), &v) == -1) {
 | 
				
			||||||
				fprintf(stderr, "vol_perc: ioctl");
 | 
									fprintf(stderr, "ioctl 'MIXER_READ(%d)': %s\n", i, strerror(errno));
 | 
				
			||||||
				close(afd);
 | 
									close(afd);
 | 
				
			||||||
				return NULL;
 | 
									return NULL;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
#if defined(__linux__)
 | 
					#if defined(__linux__)
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <ifaddrs.h>
 | 
					#include <ifaddrs.h>
 | 
				
			||||||
#include <linux/wireless.h>
 | 
					#include <linux/wireless.h>
 | 
				
			||||||
#include <sys/socket.h>
 | 
					#include <sys/socket.h>
 | 
				
			||||||
@@ -25,7 +26,7 @@ wifi_perc(const char *iface)
 | 
				
			|||||||
	snprintf(path, sizeof(path), "%s%s%s", "/sys/class/net/", iface, "/operstate");
 | 
						snprintf(path, sizeof(path), "%s%s%s", "/sys/class/net/", iface, "/operstate");
 | 
				
			||||||
	fp = fopen(path, "r");
 | 
						fp = fopen(path, "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file %s", path);
 | 
							fprintf(stderr, "fopen '%s': %s\n", path, strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	p = fgets(status, 5, fp);
 | 
						p = fgets(status, 5, fp);
 | 
				
			||||||
@@ -36,7 +37,7 @@ wifi_perc(const char *iface)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	fp = fopen("/proc/net/wireless", "r");
 | 
						fp = fopen("/proc/net/wireless", "r");
 | 
				
			||||||
	if (fp == NULL) {
 | 
						if (fp == NULL) {
 | 
				
			||||||
		fprintf(stderr, "Failed to open file /proc/net/wireless");
 | 
							fprintf(stderr, "fopen '/proc/net/wireless': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -71,12 +72,12 @@ wifi_essid(const char *iface)
 | 
				
			|||||||
	snprintf(wreq.ifr_name, sizeof(wreq.ifr_name), "%s", iface);
 | 
						snprintf(wreq.ifr_name, sizeof(wreq.ifr_name), "%s", iface);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (sockfd == -1) {
 | 
						if (sockfd == -1) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get ESSID for interface %s", iface);
 | 
							fprintf(stderr, "socket 'AF_INET': %s\n", strerror(errno));
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	wreq.u.essid.pointer = id;
 | 
						wreq.u.essid.pointer = id;
 | 
				
			||||||
	if (ioctl(sockfd,SIOCGIWESSID, &wreq) == -1) {
 | 
						if (ioctl(sockfd,SIOCGIWESSID, &wreq) == -1) {
 | 
				
			||||||
		fprintf(stderr, "Failed to get ESSID for interface %s", iface);
 | 
							fprintf(stderr, "ioctl 'SIOCGIWESSID': %s\n", strerror(errno));
 | 
				
			||||||
		close(sockfd);
 | 
							close(sockfd);
 | 
				
			||||||
		return NULL;
 | 
							return NULL;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										3
									
								
								util.c
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								util.c
									
									
									
									
									
								
							@@ -1,4 +1,5 @@
 | 
				
			|||||||
/* See LICENSE file for copyright and license details. */
 | 
					/* See LICENSE file for copyright and license details. */
 | 
				
			||||||
 | 
					#include <errno.h>
 | 
				
			||||||
#include <stdarg.h>
 | 
					#include <stdarg.h>
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
@@ -29,7 +30,7 @@ pscanf(const char *path, const char *fmt, ...)
 | 
				
			|||||||
	int n;
 | 
						int n;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (!(fp = fopen(path, "r"))) {
 | 
						if (!(fp = fopen(path, "r"))) {
 | 
				
			||||||
		fprintf(stderr, "fopen for %s failed", path);
 | 
							fprintf(stderr, "fopen '%s': %s\n", path, strerror(errno));
 | 
				
			||||||
		return -1;
 | 
							return -1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	va_start(ap, fmt);
 | 
						va_start(ap, fmt);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user