mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-13 16:16:15 -04:00
qcacld-3.0: Send proper reason code to Supplicant on beacon miss event
qcacld-2.0 to qcacld-3.0 propagation Once the beacon miss event is received in driver, sta cleanup happens and sends deauth reason code as 505 which is internal value to driver(eSIR_SME_LOST_LINK_WITH_PEER_RESULT_CODE). Send reason code as zero to Supplicant for Beacon miss kickout. Cleanup the similar handling in csr_api_roam as it is redundant. Change-Id: I6df97e05ac20f285646df3d5fe73800138a18d89 CRs-Fixed: 1025871
This commit is contained in:
parent
3580ba0355
commit
c7d808965f
2 changed files with 22 additions and 13 deletions
|
|
@ -958,6 +958,16 @@ lim_send_sme_disassoc_ntf(tpAniSirGlobal pMac,
|
|||
sizeof(tSirMacAddr));
|
||||
sir_sme_dis_ind->session_id = smesessionId;
|
||||
sir_sme_dis_ind->reason_code = reasonCode;
|
||||
/*
|
||||
* Instead of sending deauth reason code as 505 which is
|
||||
* internal value(eSIR_SME_LOST_LINK_WITH_PEER_RESULT_CODE)
|
||||
* Send reason code as zero to Supplicant
|
||||
*/
|
||||
if (reasonCode == eSIR_SME_LOST_LINK_WITH_PEER_RESULT_CODE)
|
||||
sir_sme_dis_ind->reason_code = 0;
|
||||
else
|
||||
sir_sme_dis_ind->reason_code = reasonCode;
|
||||
|
||||
pMsg = (uint32_t *)sir_sme_dis_ind;
|
||||
|
||||
break;
|
||||
|
|
@ -1424,6 +1434,16 @@ lim_send_sme_deauth_ntf(tpAniSirGlobal pMac, tSirMacAddr peerMacAddr,
|
|||
sir_sme_dis_ind->reason_code = reasonCode;
|
||||
qdf_mem_copy(sir_sme_dis_ind->peer_mac, peerMacAddr,
|
||||
ETH_ALEN);
|
||||
/*
|
||||
* Instead of sending deauth reason code as 505 which is
|
||||
* internal value(eSIR_SME_LOST_LINK_WITH_PEER_RESULT_CODE)
|
||||
* Send reason code as zero to Supplicant
|
||||
*/
|
||||
if (reasonCode == eSIR_SME_LOST_LINK_WITH_PEER_RESULT_CODE)
|
||||
sir_sme_dis_ind->reason_code = 0;
|
||||
else
|
||||
sir_sme_dis_ind->reason_code = reasonCode;
|
||||
|
||||
pMsg = (uint32_t *)sir_sme_dis_ind;
|
||||
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -11782,19 +11782,8 @@ QDF_STATUS csr_roam_lost_link(tpAniSirGlobal pMac, uint32_t sessionId,
|
|||
result = eCSR_ROAM_RESULT_DEAUTH_IND;
|
||||
pDeauthIndMsg = (tSirSmeDeauthInd *) pSirMsg;
|
||||
pSession->roamingStatusCode = pDeauthIndMsg->statusCode;
|
||||
/* Convert into proper reason code */
|
||||
if ((pDeauthIndMsg->reasonCode == eSIR_BEACON_MISSED) ||
|
||||
(pDeauthIndMsg->reasonCode ==
|
||||
eSIR_MAC_DISASSOC_DUE_TO_INACTIVITY_REASON))
|
||||
pSession->joinFailStatusCode.reasonCode = 0;
|
||||
else
|
||||
pSession->joinFailStatusCode.reasonCode =
|
||||
pDeauthIndMsg->reasonCode;
|
||||
/*
|
||||
* cfg layer expects 0 as reason code if
|
||||
* the driver dosent know the reason code
|
||||
* eSIR_BEACON_MISSED is defined as locally
|
||||
*/
|
||||
pSession->joinFailStatusCode.reasonCode =
|
||||
pDeauthIndMsg->reasonCode;
|
||||
} else {
|
||||
sms_log(pMac, LOGW, FL("gets an unknown type (%d)"), type);
|
||||
result = eCSR_ROAM_RESULT_NONE;
|
||||
|
|
|
|||
Loading…
Reference in a new issue