]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Use size_t instead of int or unsigned int for configuration items
authorJouni Malinen <j@w1.fi>
Sun, 22 Mar 2020 15:46:45 +0000 (17:46 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 22 Mar 2020 16:50:04 +0000 (18:50 +0200)
While int and unsigned int are not going overflow in practice as 32-bit
values, these could at least in theory hit an integer overflow with
16-bit int. Use size_t to avoid such potential issue cases.

Signed-off-by: Jouni Malinen <j@w1.fi>
wpa_supplicant/config.c
wpa_supplicant/config.h
wpa_supplicant/events.c
wpa_supplicant/scan.c

index 2b9c3f53e51d7d73578c81df1ff4258c2dd65bdf..4f359ede04d469fc5f1af3b382cdd86dfaacaf88 100644 (file)
@@ -2612,7 +2612,7 @@ static const struct parse_data ssid_fields[] = {
 int wpa_config_add_prio_network(struct wpa_config *config,
                                struct wpa_ssid *ssid)
 {
-       int prio;
+       size_t prio;
        struct wpa_ssid *prev, **nlist;
 
        /*
@@ -4318,7 +4318,7 @@ struct wpa_config * wpa_config_alloc_empty(const char *ctrl_interface,
  */
 void wpa_config_debug_dump_networks(struct wpa_config *config)
 {
-       int prio;
+       size_t prio;
        struct wpa_ssid *ssid;
 
        for (prio = 0; prio < config->num_prio; prio++) {
@@ -4649,7 +4649,7 @@ static int wpa_config_process_p2p_pref_chan(
        struct wpa_config *config, int line, const char *pos)
 {
        struct p2p_channel *pref = NULL, *n;
-       unsigned int num = 0;
+       size_t num = 0;
        const char *pos2;
        u8 op_class, chan;
 
index b3c779233fac981bff66de966c252507353d8dfb..486432e439fa061379c0bf0f56ff19a64f4581f6 100644 (file)
@@ -332,7 +332,7 @@ struct wpa_cred {
         */
        unsigned int max_bss_load;
 
-       unsigned int num_req_conn_capab;
+       size_t num_req_conn_capab;
        u8 *req_conn_capab_proto;
        int **req_conn_capab_port;
 
@@ -403,7 +403,7 @@ struct wpa_config {
         * This indicates how many per-priority network lists are included in
         * pssid.
         */
-       int num_prio;
+       size_t num_prio;
 
        /**
         * cred - Head of the credential list
index 2fc49932b3f2b2af95b0df6aaa00cf5c4bce9e99..3758373d4afa89e94668ccd653d5dcbea0a3a260 100644 (file)
@@ -1536,7 +1536,7 @@ struct wpa_bss * wpa_supplicant_pick_network(struct wpa_supplicant *wpa_s,
                                             struct wpa_ssid **selected_ssid)
 {
        struct wpa_bss *selected = NULL;
-       int prio;
+       size_t prio;
        struct wpa_ssid *next_ssid = NULL;
        struct wpa_ssid *ssid;
 
@@ -1691,7 +1691,7 @@ int wpa_supplicant_connect(struct wpa_supplicant *wpa_s,
 static struct wpa_ssid *
 wpa_supplicant_pick_new_network(struct wpa_supplicant *wpa_s)
 {
-       int prio;
+       size_t prio;
        struct wpa_ssid *ssid;
 
        for (prio = 0; prio < wpa_s->conf->num_prio; prio++) {
index eef3517dc7dc109d5f2d6453f7ba06d39f1843b8..ad9d77af8c0322091f8a0beaf1ec3d2b96cc23b4 100644 (file)
@@ -2628,8 +2628,8 @@ void wpa_scan_free_params(struct wpa_driver_scan_params *params)
 
 int wpas_start_pno(struct wpa_supplicant *wpa_s)
 {
-       int ret, prio;
-       size_t i, num_ssid, num_match_ssid;
+       int ret;
+       size_t prio, i, num_ssid, num_match_ssid;
        struct wpa_ssid *ssid;
        struct wpa_driver_scan_params params;
        struct sched_scan_plan scan_plan;