1
0

qcacld-3.0: Delete TDLS peers in WMA in case of roaming

Currently, if roaming in progress TDLS peers are not deleted in
WMA layer and obj mangaer this can lead to peer leak

Clear these peers in case of roaming also.

Change-Id: Ie94cf7b77dfef339b50f2f9bca879ae4b76d2eab
CRs-Fixed: 2471057
Este cometimento está contido em:
Bala Venkatesh
2019-06-19 15:37:56 +05:30
cometido por nshrivas
ascendente e7478e97d5
cometimento 1876412367

Ver ficheiro

@@ -3092,7 +3092,6 @@ static void lim_check_aid_and_delete_peer(struct mac_context *p_mac,
size_t aid_bitmap_size = sizeof(session_entry->peerAIDBitmap);
struct qdf_mac_addr mac_addr;
QDF_STATUS status;
/*
* Check all the set bit in peerAIDBitmap and delete the peer
* (with that aid) entry from the hash table and add the aid
@@ -3117,17 +3116,16 @@ static void lim_check_aid_and_delete_peer(struct mac_context *p_mac,
lim_send_deauth_mgmt_frame(p_mac,
eSIR_MAC_DEAUTH_LEAVING_BSS_REASON,
stads->staAddr, session_entry, false);
/* Delete TDLS peer */
qdf_mem_copy(mac_addr.bytes, stads->staAddr,
QDF_MAC_ADDR_SIZE);
status = lim_tdls_del_sta(p_mac, mac_addr,
session_entry, false);
if (status != QDF_STATUS_SUCCESS)
pe_debug("peer "QDF_MAC_ADDR_STR" not found",
QDF_MAC_ADDR_ARRAY(stads->staAddr));
}
/* Delete TDLS peer */
qdf_mem_copy(mac_addr.bytes, stads->staAddr,
QDF_MAC_ADDR_SIZE);
status = lim_tdls_del_sta(p_mac, mac_addr,
session_entry, false);
if (status != QDF_STATUS_SUCCESS)
pe_debug("peer " QDF_MAC_ADDR_STR " not found",
QDF_MAC_ADDR_ARRAY(stads->staAddr));
dph_delete_hash_entry(p_mac,
stads->staAddr, stads->assocId,