mwifiex: fix potential integer truncation
authorchunfan chen <jeffc@marvell.com>
Wed, 16 Dec 2015 12:21:42 +0000 (04:21 -0800)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 30 Dec 2015 15:31:16 +0000 (17:31 +0200)
At some places, ie length is truncated from u16 to u8 while
storing it to driver's internal variable. This patch fixes
the problem.

Signed-off-by: chunfan chen <jeffc@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/main.h
drivers/net/wireless/marvell/mwifiex/sta_ioctl.c

index 0fa1d8e82798ead924ee0527ef61781dffde74a6..2f7f478ce04b6d9ea179022bb52ff92c97255026 100644 (file)
@@ -564,14 +564,14 @@ struct mwifiex_private {
        struct mwifiex_wep_key wep_key[NUM_WEP_KEYS];
        u16 wep_key_curr_index;
        u8 wpa_ie[256];
-       u8 wpa_ie_len;
+       u16 wpa_ie_len;
        u8 wpa_is_gtk_set;
        struct host_cmd_ds_802_11_key_material aes_key;
        struct host_cmd_ds_802_11_key_material_v2 aes_key_v2;
        u8 wapi_ie[256];
-       u8 wapi_ie_len;
+       u16 wapi_ie_len;
        u8 *wps_ie;
-       u8 wps_ie_len;
+       u16 wps_ie_len;
        u8 wmm_required;
        u8 wmm_enabled;
        u8 wmm_qosinfo;
index 439e73fc9c02f078724ce97049cf6f5ab1cdb32e..6a4fc5d183cfec34780d8ac0d6dcd2f30e0b7f0c 100644 (file)
@@ -759,7 +759,7 @@ static int mwifiex_set_wpa_ie_helper(struct mwifiex_private *priv,
                        return -1;
                }
                memcpy(priv->wpa_ie, ie_data_ptr, ie_len);
-               priv->wpa_ie_len = (u8) ie_len;
+               priv->wpa_ie_len = ie_len;
                mwifiex_dbg(priv->adapter, CMD,
                            "cmd: Set Wpa_ie_len=%d IE=%#x\n",
                            priv->wpa_ie_len, priv->wpa_ie[0]);
This page took 0.027347 seconds and 5 git commands to generate.