qcacld-3.0: Update preauth candidate entry to scan table
During SAE roam auth offload, update the beacon/probe response frame coming from the FW via WMI_ROAM_FRAME_EVENTID into the scan db. When the bss info of the preauth candidate is unavailable in the host/kernel scan entry, supplicant fails to determine the proper SAE PWE config of the peer and the commit request fails. Change-Id: Ia782ece7bebf8274f949fe9fb3b2a2882bf47597 CRs-Fixed: 3075458
此提交包含在:

提交者
Madan Koyyalamudi

父節點
bc99e6e4ef
當前提交
6ae47b3e0b
@@ -1128,6 +1128,17 @@ void cm_report_roam_rt_stats(struct wlan_objmgr_psoc *psoc,
|
||||
enum roam_rt_stats_type events,
|
||||
struct roam_stats_event *roam_info,
|
||||
uint32_t value, uint8_t idx);
|
||||
/**
|
||||
* cm_roam_candidate_event_handler() - CM callback to save roam
|
||||
* candidate entry in scan db
|
||||
*
|
||||
* @psoc - psoc objmgr ptr
|
||||
* @frame - roam scan candidate info
|
||||
*/
|
||||
QDF_STATUS
|
||||
cm_roam_candidate_event_handler(struct wlan_objmgr_psoc *psoc,
|
||||
struct roam_scan_candidate_frame *candidate);
|
||||
|
||||
#else
|
||||
static inline
|
||||
void wlan_cm_roam_activate_pcl_per_vdev(struct wlan_objmgr_psoc *psoc,
|
||||
@@ -1294,6 +1305,13 @@ cm_report_roam_rt_stats(struct wlan_objmgr_psoc *psoc,
|
||||
struct roam_stats_event *roam_info,
|
||||
uint32_t value, uint8_t idx)
|
||||
{}
|
||||
|
||||
static inline QDF_STATUS
|
||||
cm_roam_candidate_event_handler(struct wlan_objmgr_psoc *psoc,
|
||||
struct roam_scan_candidate_frame *candidate)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif /* WLAN_FEATURE_ROAM_OFFLOAD */
|
||||
|
||||
#ifdef WLAN_FEATURE_FIPS
|
||||
|
@@ -2433,6 +2433,18 @@ struct roam_offload_synch_ind {
|
||||
#endif
|
||||
};
|
||||
|
||||
/*
|
||||
* struct roam_scan_candidate_frame Roam candidate scan entry
|
||||
* vdev_id : vdev id
|
||||
* frame_len : Length of the beacon/probe rsp frame
|
||||
* frame : Pointer to the frame
|
||||
*/
|
||||
struct roam_scan_candidate_frame {
|
||||
uint8_t vdev_id;
|
||||
uint32_t frame_length;
|
||||
uint8_t *frame;
|
||||
};
|
||||
|
||||
/**
|
||||
* wlan_cm_roam_rx_ops - structure of rx function pointers for
|
||||
* roaming related commands
|
||||
@@ -2445,6 +2457,7 @@ struct roam_offload_synch_ind {
|
||||
* @roam_stats_event_rx: Rx ops function pointer for roam stats event
|
||||
* @roam_auth_offload_event: Rx ops function pointer for auth offload event
|
||||
* @roam_pmkid_request_event_rx: Rx ops function pointer for roam pmkid event
|
||||
* @roam_candidate_frame_event : Rx ops function pointer for roam frame event
|
||||
*/
|
||||
struct wlan_cm_roam_rx_ops {
|
||||
QDF_STATUS (*roam_sync_event)(struct wlan_objmgr_psoc *psoc,
|
||||
@@ -2467,5 +2480,8 @@ struct wlan_cm_roam_rx_ops {
|
||||
(*roam_auth_offload_event)(struct auth_offload_event *auth_event);
|
||||
QDF_STATUS
|
||||
(*roam_pmkid_request_event_rx)(struct roam_pmkid_req_event *list);
|
||||
QDF_STATUS
|
||||
(*roam_candidate_frame_event)(struct wlan_objmgr_psoc *psoc,
|
||||
struct roam_scan_candidate_frame *frame);
|
||||
};
|
||||
#endif
|
||||
|
新增問題並參考
封鎖使用者