summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhao Chen <zhao.chen@mediatek.com>2018-01-25 14:01:11 +0800
committerErnest Hua <ernesthua@google.com>2018-01-26 13:07:40 -0800
commitc24849269f5848716314fac4364821c9277b2591 (patch)
treea6aa68c7d5c8ec39fdd83a23e11b33fdd256791d
parente7d72c32411b454f44753d0dec56531d5e86b2d6 (diff)
downloadmt8516-v4.4-c24849269f5848716314fac4364821c9277b2591.tar.gz
medaitek_wifi:Fix KE in qmHandleRxReplay
prWpaInfo is NULL before access it. Make sure prWpaInfo is correctly assigned before access it Bug: b/70334595 Test: test on on 5x Polk setup (power cycled AP 5x without crash) Change-Id: I06e3b4e6c990a973b771dd3dc915e07c6ff5a003 Signed-off-by: Zhao Chen <zhao.chen@mediatek.com>
-rw-r--r--drivers/misc/mediatek/connectivity/wlan/gen3/nic/que_mgt.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/misc/mediatek/connectivity/wlan/gen3/nic/que_mgt.c b/drivers/misc/mediatek/connectivity/wlan/gen3/nic/que_mgt.c
index 2fa662ec586d..583bf448cf2a 100644
--- a/drivers/misc/mediatek/connectivity/wlan/gen3/nic/que_mgt.c
+++ b/drivers/misc/mediatek/connectivity/wlan/gen3/nic/que_mgt.c
@@ -6326,9 +6326,12 @@ BOOLEAN qmHandleRxReplay(P_ADAPTER_T prAdapter, P_SW_RFB_T prSwRfb)
/* BMC only need check CCMP and TKIP Cipher suite */
prRxStatus = prSwRfb->prRxStatus;
ucSecMode = HAL_RX_STATUS_GET_SEC_MODE(prRxStatus);
- if (ucSecMode != CIPHER_SUITE_CCMP
- && ucSecMode != CIPHER_SUITE_TKIP) {
- DBGLOG_LIMITED(QM, TRACE, "SecMode: %d and CipherGroup: %d, no need check replay\n",
+
+ prGlueInfo = prAdapter->prGlueInfo;
+ prWpaInfo = &prGlueInfo->rWpaInfo;
+
+ if (ucSecMode != CIPHER_SUITE_CCMP && ucSecMode != CIPHER_SUITE_TKIP) {
+ DBGLOG_LIMITED(QM, LOUD, "SecMode: %d and CipherGroup: %d, no need check replay\n",
ucSecMode, prWpaInfo->u4CipherGroup);
return FALSE;
}
@@ -6339,8 +6342,6 @@ BOOLEAN qmHandleRxReplay(P_ADAPTER_T prAdapter, P_SW_RFB_T prSwRfb)
return TRUE;
}
- prGlueInfo = prAdapter->prGlueInfo;
- prWpaInfo = &prGlueInfo->rWpaInfo;
prDetRplyInfo = &prGlueInfo->prDetRplyInfo;
/* TODO : Need check fw rekey while fw rekey event. */
if (ucKeyID != prDetRplyInfo->ucCurKeyId) {