qcacld-3.0: Do not kickout sta if it is in band steering

When a sta is being steered, sending a deauth may interrupt the
association/EAPOL handshake on the new BSS.

Do not kickout sta if it is being steered.

Change-Id: I15dd26bca27699087cdb790de8cb95281dade385
CRs-Fixed: 3042990
This commit is contained in:
bings
2021-07-23 10:17:01 +08:00
committed by Madan Koyyalamudi
parent 9aad58a07d
commit b6c09cbaf4
8 changed files with 202 additions and 8 deletions

View File

@@ -21,6 +21,7 @@
#define _SON_API_H_
#include <qdf_types.h>
#include <wlan_objmgr_peer_obj.h>
#include <wlan_objmgr_pdev_obj.h>
#include <reg_services_public_struct.h>
@@ -38,4 +39,36 @@
uint32_t wlan_son_get_chan_flag(struct wlan_objmgr_pdev *pdev,
qdf_freq_t freq, bool flag_160,
struct ch_params *chan_params);
/**
* wlan_son_peer_set_kickout_allow() - set the peer is allowed to kickout
* @vdev: pointer to vdev
* @peer: pointer to peer
* @kickout_allow: kickout_allow to set
*
* Return: QDF_STATUS_SUCCESS on Success else failure.
*/
QDF_STATUS wlan_son_peer_set_kickout_allow(struct wlan_objmgr_vdev *vdev,
struct wlan_objmgr_peer *peer,
bool kickout_allow);
#ifdef WLAN_FEATURE_SON
/**
* wlan_son_peer_is_kickout_allow() - Is peer is allowed to kickout
* @vdev: pointer to vdev
* @macaddr: mac addr of the peer
*
* Return: True if it is allowed to kickout.
*/
bool wlan_son_peer_is_kickout_allow(struct wlan_objmgr_vdev *vdev,
uint8_t *macaddr);
#else
static inline bool wlan_son_peer_is_kickout_allow(struct wlan_objmgr_vdev *vdev,
uint8_t *macaddr)
{
return true;
}
#endif /*WLAN_FEATURE_SON*/
#endif