Commit 1d8f5c13 authored by chunfan chen's avatar chunfan chen Committed by Kalle Valo

mwifiex: fix potential integer truncation

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: default avatarchunfan chen <jeffc@marvell.com>
Signed-off-by: default avatarAmitkumar Karwar <akarwar@marvell.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent b68d0ae7
...@@ -564,14 +564,14 @@ struct mwifiex_private { ...@@ -564,14 +564,14 @@ struct mwifiex_private {
struct mwifiex_wep_key wep_key[NUM_WEP_KEYS]; struct mwifiex_wep_key wep_key[NUM_WEP_KEYS];
u16 wep_key_curr_index; u16 wep_key_curr_index;
u8 wpa_ie[256]; u8 wpa_ie[256];
u8 wpa_ie_len; u16 wpa_ie_len;
u8 wpa_is_gtk_set; u8 wpa_is_gtk_set;
struct host_cmd_ds_802_11_key_material aes_key; struct host_cmd_ds_802_11_key_material aes_key;
struct host_cmd_ds_802_11_key_material_v2 aes_key_v2; struct host_cmd_ds_802_11_key_material_v2 aes_key_v2;
u8 wapi_ie[256]; u8 wapi_ie[256];
u8 wapi_ie_len; u16 wapi_ie_len;
u8 *wps_ie; u8 *wps_ie;
u8 wps_ie_len; u16 wps_ie_len;
u8 wmm_required; u8 wmm_required;
u8 wmm_enabled; u8 wmm_enabled;
u8 wmm_qosinfo; u8 wmm_qosinfo;
......
...@@ -759,7 +759,7 @@ static int mwifiex_set_wpa_ie_helper(struct mwifiex_private *priv, ...@@ -759,7 +759,7 @@ static int mwifiex_set_wpa_ie_helper(struct mwifiex_private *priv,
return -1; return -1;
} }
memcpy(priv->wpa_ie, ie_data_ptr, ie_len); 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, mwifiex_dbg(priv->adapter, CMD,
"cmd: Set Wpa_ie_len=%d IE=%#x\n", "cmd: Set Wpa_ie_len=%d IE=%#x\n",
priv->wpa_ie_len, priv->wpa_ie[0]); priv->wpa_ie_len, priv->wpa_ie[0]);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment