1 /* 2 * SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 #ifndef ESP_COMMON_I_H 8 #define ESP_COMMON_I_H 9 10 #include "utils/includes.h" 11 12 struct wpa_funcs; 13 extern struct wpa_supplicant g_wpa_supp; 14 15 #ifdef CONFIG_IEEE80211KV 16 struct ieee_mgmt_frame { 17 u8 sender[ETH_ALEN]; 18 u8 channel; 19 int8_t rssi; 20 size_t len; 21 u8 payload[0]; 22 }; 23 24 int esp_supplicant_post_evt(uint32_t evt_id, uint32_t data); 25 26 typedef struct { 27 uint32_t id; 28 uint32_t data; 29 } supplicant_event_t; 30 31 enum SIG_SUPPLICANT { 32 SIG_SUPPLICANT_RX_ACTION, 33 SIG_SUPPLICANT_SCAN_DONE, 34 SIG_SUPPLICANT_DEL_TASK, 35 SIG_SUPPLICANT_MAX, 36 }; 37 38 void esp_get_tx_power(uint8_t *tx_power); 39 #ifdef CONFIG_MBO 40 bool mbo_bss_profile_match(u8 *bssid); 41 #endif 42 #endif 43 int esp_supplicant_common_init(struct wpa_funcs *wpa_cb); 44 void esp_supplicant_common_deinit(void); 45 void esp_supplicant_unset_all_appie(void); 46 void esp_set_scan_ie(void); 47 void esp_set_assoc_ie(uint8_t *bssid, const u8 *ies, size_t ies_len, bool add_mdie); 48 void supplicant_sta_conn_handler(uint8_t* bssid); 49 void supplicant_sta_disconn_handler(void); 50 #endif 51