diff options
author | Laslo Hunhold <dev@frign.de> | 2018-05-18 10:59:05 +0200 |
---|---|---|
committer | Aaron Marcher <me@drkhsh.at> | 2018-05-18 11:13:05 +0200 |
commit | 80fc20d1d69b14f36ad9bb64d8af38481cbf1ff5 (patch) | |
tree | ecd06a739fc89f6041aa2d84073f5bc1e0a0bad9 /components/wifi.c | |
parent | a4fe8c97414f07dd8b891e0d325dd2733195151d (diff) |
Add warn() and die()
Given slstatus is a tool that runs in the background, most likely run
from .xinitrc, it's important to prepend the name of the tool to error
messages so it becomes clear where the error is coming from.
To make this much more consistent, this commit adds warn() and die()
utility functions consistent with other suckless projects and adapts all
calls to fprintf(stderr, *) to the warn() and die() functions, greatly
increasing the readability of the code.
Diffstat (limited to 'components/wifi.c')
-rw-r--r-- | components/wifi.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/components/wifi.c b/components/wifi.c index 414d533..591f6ad 100644 --- a/components/wifi.c +++ b/components/wifi.c @@ -26,8 +26,7 @@ snprintf(path, sizeof(path), "%s%s%s", "/sys/class/net/", iface, "/operstate"); if (!(fp = fopen(path, "r"))) { - fprintf(stderr, "fopen '%s': %s\n", path, - strerror(errno)); + warn("fopen '%s':", path); return NULL; } p = fgets(status, 5, fp); @@ -37,8 +36,7 @@ } if (!(fp = fopen("/proc/net/wireless", "r"))) { - fprintf(stderr, "fopen '/proc/net/wireless': %s\n", - strerror(errno)); + warn("fopen '/proc/net/wireless':"); return NULL; } @@ -74,13 +72,12 @@ snprintf(wreq.ifr_name, sizeof(wreq.ifr_name), "%s", iface); if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { - fprintf(stderr, "socket 'AF_INET': %s\n", - strerror(errno)); + warn("socket 'AF_INET':"); return NULL; } wreq.u.essid.pointer = id; if (ioctl(sockfd,SIOCGIWESSID, &wreq) < 0) { - fprintf(stderr, "ioctl 'SIOCGIWESSID': %s\n", strerror(errno)); + warn("ioctl 'SIOCGIWESSID':"); close(sockfd); return NULL; } @@ -111,22 +108,19 @@ memset(&bssid, 0, sizeof(bssid)); memset(nr, 0, sizeof(struct ieee80211_nodereq)); if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { - fprintf(stderr, "socket 'AF_INET': %s\n", - strerror(errno)); + warn("socket 'AF_INET':"); return 0; } strlcpy(bssid.i_name, iface, sizeof(bssid.i_name)); if ((ioctl(sockfd, SIOCG80211BSSID, &bssid)) < 0) { - fprintf(stderr, "ioctl 'SIOCG80211BSSID': %s\n", - strerror(errno)); + warn("ioctl 'SIOCG80211BSSID':"); close(sockfd); return 0; } strlcpy(nr->nr_ifname, iface, sizeof(nr->nr_ifname)); memcpy(&nr->nr_macaddr, bssid.i_bssid, sizeof(nr->nr_macaddr)); if ((ioctl(sockfd, SIOCG80211NODE, nr)) < 0 && nr->nr_rssi) { - fprintf(stderr, "ioctl 'SIOCG80211NODE': %s\n", - strerror(errno)); + warn("ioctl 'SIOCG80211NODE':"); close(sockfd); return 0; } |