158391efdSNathan Chancellor /* SPDX-License-Identifier: GPL-2.0 */
2554c0a3aSHans de Goede /******************************************************************************
3554c0a3aSHans de Goede  *
4554c0a3aSHans de Goede  * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.
5554c0a3aSHans de Goede  *
6554c0a3aSHans de Goede  ******************************************************************************/
7554c0a3aSHans de Goede #ifndef __RTW_AP_H_
8554c0a3aSHans de Goede #define __RTW_AP_H_
9554c0a3aSHans de Goede 
10554c0a3aSHans de Goede void init_mlme_ap_info(struct adapter *padapter);
11554c0a3aSHans de Goede void free_mlme_ap_info(struct adapter *padapter);
12554c0a3aSHans de Goede /* void update_BCNTIM(struct adapter *padapter); */
13554c0a3aSHans de Goede void update_beacon(struct adapter *padapter, u8 ie_id, u8 *oui, u8 tx);
14554c0a3aSHans de Goede void add_RATid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level);
15554c0a3aSHans de Goede void expire_timeout_chk(struct adapter *padapter);
16554c0a3aSHans de Goede void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta);
17*cab77590SSaurav Girepunje void start_bss_network(struct adapter *padapter);
18554c0a3aSHans de Goede int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf,  int len);
19554c0a3aSHans de Goede void rtw_ap_restore_network(struct adapter *padapter);
20554c0a3aSHans de Goede void rtw_set_macaddr_acl(struct adapter *padapter, int mode);
21554c0a3aSHans de Goede int rtw_acl_add_sta(struct adapter *padapter, u8 *addr);
224769aae3SShobhit Kukreti void rtw_acl_remove_sta(struct adapter *padapter, u8 *addr);
23554c0a3aSHans de Goede 
24554c0a3aSHans de Goede u8 rtw_ap_set_pairwise_key(struct adapter *padapter, struct sta_info *psta);
25554c0a3aSHans de Goede int rtw_ap_set_group_key(struct adapter *padapter, u8 *key, u8 alg, int keyid);
26554c0a3aSHans de Goede int rtw_ap_set_wep_key(struct adapter *padapter, u8 *key, u8 keylen, int keyid, u8 set_tx);
27554c0a3aSHans de Goede 
28554c0a3aSHans de Goede void associated_clients_update(struct adapter *padapter, u8 updated);
29554c0a3aSHans de Goede void bss_cap_update_on_sta_join(struct adapter *padapter, struct sta_info *psta);
30554c0a3aSHans de Goede u8 bss_cap_update_on_sta_leave(struct adapter *padapter, struct sta_info *psta);
31554c0a3aSHans de Goede void sta_info_update(struct adapter *padapter, struct sta_info *psta);
32554c0a3aSHans de Goede void ap_sta_info_defer_update(struct adapter *padapter, struct sta_info *psta);
33554c0a3aSHans de Goede u8 ap_free_sta(struct adapter *padapter, struct sta_info *psta, bool active, u16 reason);
34371ec021SHariprasad Kelam void rtw_sta_flush(struct adapter *padapter);
35554c0a3aSHans de Goede void start_ap_mode(struct adapter *padapter);
36554c0a3aSHans de Goede void stop_ap_mode(struct adapter *padapter);
37554c0a3aSHans de Goede 
38554c0a3aSHans de Goede #endif
39554c0a3aSHans de Goede void update_bmc_sta(struct adapter *padapter);
40