[go: nahoru, domu]

1/******************************************************************************
2 *
3 * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of version 2 of the GNU General Public License as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17 *
18 *
19 ******************************************************************************/
20#ifndef __RTW_AP_H_
21#define __RTW_AP_H_
22
23#include <osdep_service.h>
24#include <drv_types.h>
25
26#ifdef CONFIG_88EU_AP_MODE
27
28/* external function */
29void rtw_indicate_sta_assoc_event(struct adapter *padapter,
30				  struct sta_info *psta);
31void rtw_indicate_sta_disassoc_event(struct adapter *padapter,
32				     struct sta_info *psta);
33void init_mlme_ap_info(struct adapter *padapter);
34void free_mlme_ap_info(struct adapter *padapter);
35void rtw_add_bcn_ie(struct adapter *padapter, struct wlan_bssid_ex *pnetwork,
36		    u8 index, u8 *data, u8 len);
37void rtw_remove_bcn_ie(struct adapter *padapter,
38		       struct wlan_bssid_ex *pnetwork, u8 index);
39void update_beacon(struct adapter *padapter, u8 ie_id,
40		   u8 *oui, u8 tx);
41void add_RATid(struct adapter *padapter, struct sta_info *psta,
42	       u8 rssi_level);
43void expire_timeout_chk(struct adapter *padapter);
44void update_sta_info_apmode(struct adapter *padapter, struct sta_info *psta);
45int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf,  int len);
46void rtw_set_macaddr_acl(struct adapter *padapter, int mode);
47int rtw_acl_add_sta(struct adapter *padapter, u8 *addr);
48int rtw_acl_remove_sta(struct adapter *padapter, u8 *addr);
49
50#ifdef CONFIG_88EU_AP_MODE
51void associated_clients_update(struct adapter *padapter, u8 updated);
52void bss_cap_update_on_sta_join(struct adapter *padapter, struct sta_info *psta);
53u8 bss_cap_update_on_sta_leave(struct adapter *padapter, struct sta_info *psta);
54void sta_info_update(struct adapter *padapter, struct sta_info *psta);
55void ap_sta_info_defer_update(struct adapter *padapter, struct sta_info *psta);
56u8 ap_free_sta(struct adapter *padapter, struct sta_info *psta,
57	       bool active, u16 reason);
58int rtw_sta_flush(struct adapter *padapter);
59int rtw_ap_inform_ch_switch(struct adapter *padapter, u8 new_ch, u8 ch_offset);
60void start_ap_mode(struct adapter *padapter);
61void stop_ap_mode(struct adapter *padapter);
62#endif
63#endif /* end of CONFIG_88EU_AP_MODE */
64
65#endif
66