Use ARRAY_SIZE() macro
authorJouni Malinen <j@w1.fi>
Sat, 26 Oct 2013 14:00:57 +0000 (17:00 +0300)
committerJouni Malinen <j@w1.fi>
Sat, 26 Oct 2013 14:49:05 +0000 (17:49 +0300)
Replace the common sizeof(a)/sizeof(a[0]) constructions with a more
readable version.

Signed-hostap: Jouni Malinen <j@w1.fi>

22 files changed:
src/ap/acs.c
src/ap/dfs.c
src/ap/hw_features.c
src/crypto/dh_groups.c
src/drivers/driver_madwifi.c
src/drivers/driver_nl80211.c
src/eap_common/ikev2_common.c
src/radius/radius.c
src/tls/tlsv1_common.c
src/utils/os_unix.c
tests/test-aes.c
tests/test-md4.c
tests/test-md5.c
tests/test-milenage.c
tests/test-rc4.c
tests/test-sha1.c
tests/test-sha256.c
wlantest/wlantest_cli.c
wpa_supplicant/config.c
wpa_supplicant/dbus/dbus_new_handlers.c
wpa_supplicant/dbus/dbus_old_handlers.c
wpa_supplicant/wpa_cli.c

index 8536e48..019b334 100644 (file)
@@ -358,7 +358,7 @@ static int acs_usable_ht40_chan(struct hostapd_channel_data *chan)
                                157, 184, 192 };
        unsigned int i;
 
-       for (i = 0; i < sizeof(allowed) / sizeof(allowed[0]); i++)
+       for (i = 0; i < ARRAY_SIZE(allowed); i++)
                if (chan->chan == allowed[i])
                        return 1;
 
index a745a8a..a30861f 100644 (file)
@@ -74,11 +74,11 @@ static int dfs_is_chan_allowed(struct hostapd_channel_data *chan, int n_chans)
        switch (n_chans) {
        case 2:
                allowed = allowed_40;
-               allowed_no = sizeof(allowed_40) / sizeof(allowed_40[0]);
+               allowed_no = ARRAY_SIZE(allowed_40);
                break;
        case 4:
                allowed = allowed_80;
-               allowed_no = sizeof(allowed_80) / sizeof(allowed_80[0]);
+               allowed_no = ARRAY_SIZE(allowed_80);
                break;
        default:
                wpa_printf(MSG_DEBUG, "Unknown width for %d channels", n_chans);
index 609ed53..07db315 100644 (file)
@@ -270,7 +270,7 @@ static int ieee80211n_allowed_ht40_channel_pair(struct hostapd_iface *iface)
                first = sec_chan;
 
        ok = 0;
-       for (k = 0; k < sizeof(allowed) / sizeof(allowed[0]); k++) {
+       for (k = 0; k < ARRAY_SIZE(allowed); k++) {
                if (first == allowed[k]) {
                        ok = 1;
                        break;
index 3a675df..58e94c3 100644 (file)
@@ -1169,7 +1169,7 @@ static struct dh_group dh_groups[] = {
 #endif /* ALL_DH_GROUPS */
 };
 
-#define NUM_DH_GROUPS (sizeof(dh_groups) / sizeof(dh_groups[0]))
+#define NUM_DH_GROUPS ARRAY_SIZE(dh_groups)
 
 
 const struct dh_group * dh_groups_get(int id)
index bb48011..d337927 100644 (file)
@@ -182,7 +182,7 @@ set80211priv(struct madwifi_driver_data *drv, int op, void *data, int len)
 #endif /* MADWIFI_NG */
                int idx = op - first;
                if (first <= op &&
-                   idx < (int) (sizeof(opnames) / sizeof(opnames[0])) &&
+                   idx < (int) ARRAY_SIZE(opnames) &&
                    opnames[idx])
                        perror(opnames[idx]);
                else
index ced5fd4..bf406a2 100644 (file)
@@ -3967,7 +3967,7 @@ static int nl80211_mgmt_subscribe_ap(struct i802_bss *bss)
        wpa_printf(MSG_DEBUG, "nl80211: Subscribe to mgmt frames with AP "
                   "handle %p", bss->nl_mgmt);
 
-       for (i = 0; i < sizeof(stypes) / sizeof(stypes[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(stypes); i++) {
                if (nl80211_register_frame(bss, bss->nl_mgmt,
                                           (WLAN_FC_TYPE_MGMT << 2) |
                                           (stypes[i] << 4),
@@ -7238,7 +7238,7 @@ static struct sock_filter msock_filter_insns[] = {
 };
 
 static struct sock_fprog msock_filter = {
-       .len = sizeof(msock_filter_insns)/sizeof(msock_filter_insns[0]),
+       .len = ARRAY_SIZE(msock_filter_insns),
        .filter = msock_filter_insns,
 };
 
index 376fcad..f061866 100644 (file)
@@ -21,7 +21,7 @@ static struct ikev2_integ_alg ikev2_integ_algs[] = {
        { AUTH_HMAC_MD5_96, 16, 12 }
 };
 
-#define NUM_INTEG_ALGS (sizeof(ikev2_integ_algs) / sizeof(ikev2_integ_algs[0]))
+#define NUM_INTEG_ALGS ARRAY_SIZE(ikev2_integ_algs)
 
 
 static struct ikev2_prf_alg ikev2_prf_algs[] = {
@@ -29,7 +29,7 @@ static struct ikev2_prf_alg ikev2_prf_algs[] = {
        { PRF_HMAC_MD5, 16, 16 }
 };
 
-#define NUM_PRF_ALGS (sizeof(ikev2_prf_algs) / sizeof(ikev2_prf_algs[0]))
+#define NUM_PRF_ALGS ARRAY_SIZE(ikev2_prf_algs)
 
 
 static struct ikev2_encr_alg ikev2_encr_algs[] = {
@@ -37,7 +37,7 @@ static struct ikev2_encr_alg ikev2_encr_algs[] = {
        { ENCR_3DES, 24, 8 }
 };
 
-#define NUM_ENCR_ALGS (sizeof(ikev2_encr_algs) / sizeof(ikev2_encr_algs[0]))
+#define NUM_ENCR_ALGS ARRAY_SIZE(ikev2_encr_algs)
 
 
 const struct ikev2_integ_alg * ikev2_get_integ(int id)
index d1feec9..494f92d 100644 (file)
@@ -233,7 +233,7 @@ static struct radius_attr_type radius_attrs[] =
        { RADIUS_ATTR_NAS_IPV6_ADDRESS, "NAS-IPv6-Address", RADIUS_ATTR_IPV6 },
        { RADIUS_ATTR_ERROR_CAUSE, "Error-Cause", RADIUS_ATTR_INT32 }
 };
-#define RADIUS_ATTRS (sizeof(radius_attrs) / sizeof(radius_attrs[0]))
+#define RADIUS_ATTRS ARRAY_SIZE(radius_attrs)
 
 
 static struct radius_attr_type *radius_get_attr_type(u8 type)
index d212862..4578b22 100644 (file)
@@ -57,8 +57,7 @@ static const struct tls_cipher_suite tls_cipher_suites[] = {
          TLS_CIPHER_AES_256_CBC, TLS_HASH_SHA256 }
 };
 
-#define NUM_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
-#define NUM_TLS_CIPHER_SUITES NUM_ELEMS(tls_cipher_suites)
+#define NUM_TLS_CIPHER_SUITES ARRAY_SIZE(tls_cipher_suites)
 
 
 static const struct tls_cipher_data tls_ciphers[] = {
@@ -84,7 +83,7 @@ static const struct tls_cipher_data tls_ciphers[] = {
          CRYPTO_CIPHER_ALG_AES }
 };
 
-#define NUM_TLS_CIPHER_DATA NUM_ELEMS(tls_ciphers)
+#define NUM_TLS_CIPHER_DATA ARRAY_SIZE(tls_ciphers)
 
 
 /**
index 40ad9d4..11946b4 100644 (file)
@@ -268,7 +268,7 @@ int os_program_init(void)
        struct __user_cap_header_struct header;
        struct __user_cap_data_struct cap;
 
-       setgroups(sizeof(groups)/sizeof(groups[0]), groups);
+       setgroups(ARRAY_SIZE(groups), groups);
 
        prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0);
 
index 84c959c..e7b5534 100644 (file)
@@ -134,7 +134,7 @@ static int test_cbc(void)
        u8 *buf;
        unsigned int i;
 
-       for (i = 0; i < sizeof(vectors) / sizeof(vectors[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(vectors); i++) {
                struct cbc_test_vector *tv = &vectors[i];
                buf = malloc(tv->len);
                if (buf == NULL) {
@@ -347,7 +347,7 @@ static int test_gcm(void)
        u8 p[64], c[64], tmp[64];
        size_t k_len, p_len, aad_len, iv_len;
 
-       for (i = 0; i < sizeof(gcm_tests) / sizeof(gcm_tests[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(gcm_tests); i++) {
                const struct gcm_test_vector *tc = &gcm_tests[i];
 
                k_len = os_strlen(tc->k) / 2;
@@ -542,7 +542,7 @@ int main(int argc, char *argv[])
 
        test_aes_perf();
 
-       for (i = 0; i < sizeof(test_vectors) / sizeof(test_vectors[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(test_vectors); i++) {
                tv = &test_vectors[i];
                if (omac1_aes_128(tv->k, tv->msg, tv->msg_len, result) ||
                    memcmp(result, tv->tag, 16) != 0) {
index 903fd10..e3e63ed 100644 (file)
@@ -61,7 +61,7 @@ int main(int argc, char *argv[])
        size_t len[2];
        int errors = 0;
 
-       for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(tests); i++) {
                printf("MD4 test case %d:", i);
 
                addr[0] = (u8 *) tests[i].data;
index 5ae0671..b5246a4 100644 (file)
@@ -61,7 +61,7 @@ int main(int argc, char *argv[])
        size_t len[2];
        int errors = 0;
 
-       for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(tests); i++) {
                printf("MD5 test case %d:", i);
 
                addr[0] = (u8 *) tests[i].data;
index b41e1a7..9d2f7f0 100644 (file)
@@ -249,7 +249,7 @@ static const struct gsm_milenage_test_set gsm_test_sets[] =
        }
 };
 
-#define NUM_GSM_TESTS (sizeof(gsm_test_sets) / sizeof(gsm_test_sets[0]))
+#define NUM_GSM_TESTS ARRAY_SIZE(gsm_test_sets)
 
 
 struct milenage_test_set {
@@ -693,7 +693,7 @@ static const struct milenage_test_set test_sets[] =
        }
 };
 
-#define NUM_TESTS (sizeof(test_sets) / sizeof(test_sets[0]))
+#define NUM_TESTS ARRAY_SIZE(test_sets)
 
 
 int main(int argc, char *argv[])
index 6ac2ef3..99f5592 100644 (file)
@@ -198,7 +198,7 @@ static const struct rc4_test_vector tests[] = {
        }
 };
 
-#define NUM_TESTS (sizeof(tests) / sizeof(tests[0]))
+#define NUM_TESTS ARRAY_SIZE(tests)
 
 
 static int run_test(unsigned int i, const u8 *key, size_t key_len,
index 4141c49..9dcbbe9 100644 (file)
@@ -282,8 +282,7 @@ static struct passphrase_test passphrase_tests[] =
        },
 };
 
-#define NUM_PASSPHRASE_TESTS \
-(sizeof(passphrase_tests) / sizeof(passphrase_tests[0]))
+#define NUM_PASSPHRASE_TESTS ARRAY_SIZE(passphrase_tests)
 
 
 struct rfc6070_test {
@@ -368,8 +367,7 @@ static struct rfc6070_test rfc6070_tests[] =
 #endif
 };
 
-#define NUM_RFC6070_TESTS \
-(sizeof(rfc6070_tests) / sizeof(rfc6070_tests[0]))
+#define NUM_RFC6070_TESTS ARRAY_SIZE(rfc6070_tests)
 
 
 int main(int argc, char *argv[])
index 9d45439..7703aea 100644 (file)
@@ -251,7 +251,7 @@ int main(int argc, char *argv[])
        size_t len[2];
        int errors = 0;
 
-       for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(tests); i++) {
                printf("SHA256 test case %d:", i + 1);
 
                addr[0] = (u8 *) tests[i].data;
@@ -279,7 +279,7 @@ int main(int argc, char *argv[])
                printf("\n");
        }
 
-       for (i = 0; i < sizeof(hmac_tests) / sizeof(hmac_tests[0]); i++) {
+       for (i = 0; i < ARRAY_SIZE(hmac_tests); i++) {
                struct hmac_test *t = &hmac_tests[i];
                printf("HMAC-SHA256 test case %d:", i + 1);
 
index a531b60..fe81bfc 100644 (file)
@@ -622,7 +622,7 @@ static char ** complete_get_sta_counter(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* counter list */
-               count = sizeof(sta_counters) / sizeof(sta_counters[0]);
+               count = ARRAY_SIZE(sta_counters);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        return NULL;
@@ -721,7 +721,7 @@ static char ** complete_get_bss_counter(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* counter list */
-               count = sizeof(bss_counters) / sizeof(bss_counters[0]);
+               count = ARRAY_SIZE(bss_counters);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        return NULL;
@@ -835,7 +835,7 @@ static char ** complete_get_tdls_counter(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* counter list */
-               count = sizeof(tdls_counters) / sizeof(tdls_counters[0]);
+               count = ARRAY_SIZE(tdls_counters);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        return NULL;
@@ -971,7 +971,7 @@ static char ** complete_inject(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* frame list */
-               count = sizeof(inject_frames) / sizeof(inject_frames[0]);
+               count = ARRAY_SIZE(inject_frames);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        break;
@@ -1322,7 +1322,7 @@ static char ** complete_info_sta(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* counter list */
-               count = sizeof(sta_infos) / sizeof(sta_infos[0]);
+               count = ARRAY_SIZE(sta_infos);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        return NULL;
@@ -1427,7 +1427,7 @@ static char ** complete_info_bss(int s, const char *str, int pos)
        switch (arg) {
        case 1:
                /* counter list */
-               count = sizeof(bss_infos) / sizeof(bss_infos[0]);
+               count = ARRAY_SIZE(bss_infos);
                res = os_calloc(count, sizeof(char *));
                if (res == NULL)
                        return NULL;
@@ -1606,11 +1606,9 @@ static void wlantest_cli_edit_eof_cb(void *ctx)
 static char ** wlantest_cli_cmd_list(void)
 {
        char **res;
-       int i, count;
+       int i;
 
-       count = sizeof(wlantest_cli_commands) /
-               sizeof(wlantest_cli_commands[0]);
-       res = os_calloc(count, sizeof(char *));
+       res = os_calloc(ARRAY_SIZE(wlantest_cli_commands), sizeof(char *));
        if (res == NULL)
                return NULL;
 
index ea7ac5a..66ee30a 100644 (file)
@@ -1686,7 +1686,7 @@ static const struct parse_data ssid_fields[] = {
 #undef _FUNC
 #undef FUNC
 #undef FUNC_KEY
-#define NUM_SSID_FIELDS (sizeof(ssid_fields) / sizeof(ssid_fields[0]))
+#define NUM_SSID_FIELDS ARRAY_SIZE(ssid_fields)
 
 
 /**
@@ -3278,7 +3278,7 @@ static const struct global_parse_data global_fields[] = {
 #undef STR
 #undef STR_RANGE
 #undef BIN
-#define NUM_GLOBAL_FIELDS (sizeof(global_fields) / sizeof(global_fields[0]))
+#define NUM_GLOBAL_FIELDS ARRAY_SIZE(global_fields)
 
 
 int wpa_config_process_global(struct wpa_config *config, char *pos, int line)
index bb6b7b9..9f923e6 100644 (file)
@@ -2030,7 +2030,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
                const char *args[] = {"ccmp", "tkip", "none"};
                if (!wpa_dbus_dict_append_string_array(
                            &iter_dict, "Pairwise", args,
-                           sizeof(args) / sizeof(char*)))
+                           ARRAY_SIZE(args)))
                        goto nomem;
        } else {
                if (!wpa_dbus_dict_begin_string_array(&iter_dict, "Pairwise",
@@ -2077,7 +2077,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
                };
                if (!wpa_dbus_dict_append_string_array(
                            &iter_dict, "Group", args,
-                           sizeof(args) / sizeof(char*)))
+                           ARRAY_SIZE(args)))
                        goto nomem;
        } else {
                if (!wpa_dbus_dict_begin_string_array(&iter_dict, "Group",
@@ -2134,7 +2134,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
                };
                if (!wpa_dbus_dict_append_string_array(
                            &iter_dict, "KeyMgmt", args,
-                           sizeof(args) / sizeof(char*)))
+                           ARRAY_SIZE(args)))
                        goto nomem;
        } else {
                if (!wpa_dbus_dict_begin_string_array(&iter_dict, "KeyMgmt",
@@ -2214,7 +2214,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
                const char *args[] = { "rsn", "wpa" };
                if (!wpa_dbus_dict_append_string_array(
                            &iter_dict, "Protocol", args,
-                           sizeof(args) / sizeof(char*)))
+                           ARRAY_SIZE(args)))
                        goto nomem;
        } else {
                if (!wpa_dbus_dict_begin_string_array(&iter_dict, "Protocol",
@@ -2249,7 +2249,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
                const char *args[] = { "open", "shared", "leap" };
                if (!wpa_dbus_dict_append_string_array(
                            &iter_dict, "AuthAlg", args,
-                           sizeof(args) / sizeof(char*)))
+                           ARRAY_SIZE(args)))
                        goto nomem;
        } else {
                if (!wpa_dbus_dict_begin_string_array(&iter_dict, "AuthAlg",
@@ -2285,7 +2285,7 @@ dbus_bool_t wpas_dbus_getter_capabilities(DBusMessageIter *iter,
 
        /***** Scan */
        if (!wpa_dbus_dict_append_string_array(&iter_dict, "Scan", scans,
-                                              sizeof(scans) / sizeof(char *)))
+                                              ARRAY_SIZE(scans)))
                goto nomem;
 
        /***** Modes */
index e565de9..6d178f4 100644 (file)
@@ -539,7 +539,7 @@ DBusMessage * wpas_dbus_iface_capabilities(DBusMessage *message,
                        const char *args[] = {"CCMP", "TKIP", "NONE"};
                        if (!wpa_dbus_dict_append_string_array(
                                    &iter_dict, "pairwise", args,
-                                   sizeof(args) / sizeof(char*)))
+                                   ARRAY_SIZE(args)))
                                goto error;
                }
        } else {
@@ -582,7 +582,7 @@ DBusMessage * wpas_dbus_iface_capabilities(DBusMessage *message,
                        };
                        if (!wpa_dbus_dict_append_string_array(
                                    &iter_dict, "group", args,
-                                   sizeof(args) / sizeof(char*)))
+                                   ARRAY_SIZE(args)))
                                goto error;
                }
        } else {
@@ -632,7 +632,7 @@ DBusMessage * wpas_dbus_iface_capabilities(DBusMessage *message,
                        };
                        if (!wpa_dbus_dict_append_string_array(
                                    &iter_dict, "key_mgmt", args,
-                                   sizeof(args) / sizeof(char*)))
+                                   ARRAY_SIZE(args)))
                                goto error;
                }
        } else {
@@ -683,7 +683,7 @@ DBusMessage * wpas_dbus_iface_capabilities(DBusMessage *message,
                        const char *args[] = { "RSN", "WPA" };
                        if (!wpa_dbus_dict_append_string_array(
                                    &iter_dict, "proto", args,
-                                   sizeof(args) / sizeof(char*)))
+                                   ARRAY_SIZE(args)))
                                goto error;
                }
        } else {
@@ -720,7 +720,7 @@ DBusMessage * wpas_dbus_iface_capabilities(DBusMessage *message,
                        const char *args[] = { "OPEN", "SHARED", "LEAP" };
                        if (!wpa_dbus_dict_append_string_array(
                                    &iter_dict, "auth_alg", args,
-                                   sizeof(args) / sizeof(char*)))
+                                   ARRAY_SIZE(args)))
                                goto error;
                }
        } else {
index f95f7b1..d793819 100644 (file)
@@ -627,7 +627,7 @@ static char ** wpa_cli_complete_set(const char *str, int pos)
                "sae_groups", "dtim_period", "beacon_int", "ap_vendor_elements",
                "ignore_old_scan_res", "freq_list", "external_sim"
        };
-       int i, num_fields = sizeof(fields) / sizeof(fields[0]);
+       int i, num_fields = ARRAY_SIZE(fields);
 
        if (arg == 1) {
                char **res = os_calloc(num_fields + 1, sizeof(char *));
@@ -2112,7 +2112,7 @@ static char ** wpa_cli_complete_p2p_set(const char *str, int pos)
                "disc_int",
                "per_sta_psk",
        };
-       int i, num_fields = sizeof(fields) / sizeof(fields[0]);
+       int i, num_fields = ARRAY_SIZE(fields);
 
        if (arg == 1) {
                char **res = os_calloc(num_fields + 1, sizeof(char *));
@@ -2927,7 +2927,7 @@ static char ** wpa_list_cmd_list(void)
        int i, count;
        struct cli_txt_entry *e;
 
-       count = sizeof(wpa_cli_commands) / sizeof(wpa_cli_commands[0]);
+       count = ARRAY_SIZE(wpa_cli_commands);
        count += dl_list_len(&p2p_groups);
        count += dl_list_len(&ifnames);
        res = os_calloc(count + 1, sizeof(char *));