qcacld-3.0: Fix memzero of key_params in wma_set_stakey
In wma_set_stakey key_params is memset to 0 in first loop for num_key
while being used in subsequent loops for num_key.
So with key_params all zero the vdev id used to send for next key is
always 0.
So memset key_params after loop before returning from wma_set_stakey.
Change-Id: I3990a5c5017f068bb41914c6e38c4e8c2155bb19
CRs-Fixed: 2441622
Bug: 130662095
Signed-off-by: Srinivas Girigowda <quic_sgirigow@quicinc.com>
diff --git a/core/wma/src/wma_mgmt.c b/core/wma/src/wma_mgmt.c
index 5e61e62..d6d21d1 100644
--- a/core/wma/src/wma_mgmt.c
+++ b/core/wma/src/wma_mgmt.c
@@ -2177,7 +2177,6 @@
key_params.key_len = key_info->key[i].keyLength;
status = wma_setup_install_key_cmd(wma_handle, &key_params,
opmode);
- qdf_mem_zero(&key_params, sizeof(struct wma_set_key_params));
if (status == QDF_STATUS_E_NOMEM) {
WMA_LOGE("%s:Failed to setup install key buf",
__func__);
@@ -2207,6 +2206,7 @@
/* TODO: Should we wait till we get HTT_T2H_MSG_TYPE_SEC_IND? */
key_info->status = QDF_STATUS_SUCCESS;
out:
+ qdf_mem_zero(&key_params, sizeof(struct wma_set_key_params));
if (key_info->sendRsp)
wma_send_msg_high_priority(wma_handle, WMA_SET_STAKEY_RSP,
(void *)key_info, 0);