src/daemon/common.[ch]: add check_capability() function
[collectd.git] / src / madwifi.c
index 6eb12dd..728fcd8 100644 (file)
@@ -89,6 +89,7 @@
 
 
 #include "collectd.h"
+
 #include "common.h"
 #include "plugin.h"
 #include "configfile.h"
@@ -394,8 +395,7 @@ static inline void watchlist_remove (uint32_t *wl, int item)
 
 static inline void watchlist_set (uint32_t *wl, uint32_t val)
 {
-       int i;
-       for (i = 0; i < WL_LEN; i++)
+       for (int i = 0; i < WL_LEN; i++)
                wl[i] = val;
 }
 
@@ -403,9 +403,8 @@ static inline void watchlist_set (uint32_t *wl, uint32_t val)
 static int watchitem_find (const char *name)
 {
        int max = STATIC_ARRAY_SIZE (specs);
-       int i;
 
-       for (i = 0; i < max; i++)
+       for (int i = 0; i < max; i++)
                if (strcasecmp (name, specs[i].name) == 0)
                        return i;
 
@@ -420,15 +419,14 @@ static int watchitem_find (const char *name)
 static int madwifi_real_init (void)
 {
        size_t max = STATIC_ARRAY_SIZE (specs);
-       size_t i;
 
-       for (i = 0; i < STATIC_ARRAY_SIZE (bounds); i++)
+       for (size_t i = 0; i < STATIC_ARRAY_SIZE (bounds); i++)
                bounds[i] = 0;
 
        watchlist_set(watch_items, 0);
        watchlist_set(misc_items, 0);
 
-       for (i = 0; i < max; i++)
+       for (size_t i = 0; i < max; i++)
        {
                bounds[specs[i].flags & SRC_MASK] = i;
 
@@ -439,7 +437,7 @@ static int madwifi_real_init (void)
                        misc_items[i / 32] |= FLAG (i);
        }
 
-       for (i = 0; i < STATIC_ARRAY_SIZE (bounds); i++)
+       for (size_t i = 0; i < STATIC_ARRAY_SIZE (bounds); i++)
                bounds[i]++;
 
        return (0);
@@ -589,9 +587,8 @@ static void submit_antx (const char *dev, const char *name,
                u_int32_t *vals, int vals_num)
 {
        char ti2[16];
-       int i;
 
-       for (i = 0; i < vals_num; i++)
+       for (int i = 0; i < vals_num; i++)
        {
                if (vals[i] == 0)
                        continue;
@@ -614,12 +611,11 @@ process_stat_struct (int which, const void *ptr, const char *dev, const char *ma
                         const char *type_name, const char *misc_name)
 {
        uint32_t misc = 0;
-       int i;
 
        assert (which >= 1);
        assert (((size_t) which) < STATIC_ARRAY_SIZE (bounds));
 
-       for (i = bounds[which - 1]; i < bounds[which]; i++)
+       for (int i = bounds[which - 1]; i < bounds[which]; i++)
        {
                uint32_t val = *(uint32_t *)(((char *) ptr) + specs[i].offset) ;
 
@@ -699,7 +695,6 @@ process_80211stats (int sk, const char *dev)
 static int
 process_station (int sk, const char *dev, struct ieee80211req_sta_info *si)
 {
-       struct iwreq iwr;
        static char mac[DATA_MAX_NAME_LEN];
        struct ieee80211req_sta_stats stats;
        const struct ieee80211_nodestats *ns = &stats.is_stats;
@@ -714,10 +709,12 @@ process_station (int sk, const char *dev, struct ieee80211req_sta_info *si)
        if (item_watched (STAT_NODE_RSSI))
                submit_gauge (dev, "node_rssi", mac, NULL, si->isi_rssi);
 
-       memset (&iwr, 0, sizeof (iwr));
+       struct iwreq iwr = {
+               .u.data.pointer = (void *) &stats,
+               .u.data.length = sizeof (stats)
+       };
        sstrncpy(iwr.ifr_name, dev, sizeof (iwr.ifr_name));
-       iwr.u.data.pointer = (void *) &stats;
-       iwr.u.data.length = sizeof (stats);
+
        memcpy(stats.is_u.macaddr, si->isi_macaddr, IEEE80211_ADDR_LEN);
        status = ioctl(sk, IEEE80211_IOCTL_STA_STATS, &iwr);
        if (status < 0)
@@ -750,17 +747,17 @@ process_station (int sk, const char *dev, struct ieee80211req_sta_info *si)
 static int
 process_stations (int sk, const char *dev)
 {
-       uint8_t buf[24*1024];
-       struct iwreq iwr;
+       uint8_t buf[24*1024] = { 0 };
        uint8_t *cp;
        int nodes;
        size_t len;
        int status;
 
-       memset (&iwr, 0, sizeof (iwr));
+       struct iwreq iwr = {
+               .u.data.pointer = (void *) buf,
+               .u.data.length = sizeof (buf)
+       };
        sstrncpy (iwr.ifr_name, dev, sizeof (iwr.ifr_name));
-       iwr.u.data.pointer = (void *) buf;
-       iwr.u.data.length = sizeof (buf);
 
        status = ioctl (sk, IEEE80211_IOCTL_STA_INFO, &iwr);
        if (status < 0)