00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef IEEE802_11_H
00016 #define IEEE802_11_H
00017
00018 struct hostapd_iface;
00019 struct hostapd_data;
00020 struct sta_info;
00021 struct hostapd_frame_info;
00022 struct ieee80211_ht_capabilities;
00023
00024 void ieee802_11_send_deauth(struct hostapd_data *hapd, const u8 *addr,
00025 u16 reason);
00026 void ieee802_11_mgmt(struct hostapd_data *hapd, const u8 *buf, size_t len,
00027 struct hostapd_frame_info *fi);
00028 void ieee802_11_mgmt_cb(struct hostapd_data *hapd, const u8 *buf, size_t len,
00029 u16 stype, int ok);
00030 void ieee802_11_print_ssid(char *buf, const u8 *ssid, u8 len);
00031 #ifdef NEED_AP_MLME
00032 int ieee802_11_get_mib(struct hostapd_data *hapd, char *buf, size_t buflen);
00033 int ieee802_11_get_mib_sta(struct hostapd_data *hapd, struct sta_info *sta,
00034 char *buf, size_t buflen);
00035 #else
00036 static inline int ieee802_11_get_mib(struct hostapd_data *hapd, char *buf,
00037 size_t buflen)
00038 {
00039 return 0;
00040 }
00041
00042 static inline int ieee802_11_get_mib_sta(struct hostapd_data *hapd,
00043 struct sta_info *sta,
00044 char *buf, size_t buflen)
00045 {
00046 return 0;
00047 }
00048 #endif
00049 u16 hostapd_own_capab_info(struct hostapd_data *hapd, struct sta_info *sta,
00050 int probe);
00051 u8 * hostapd_eid_supp_rates(struct hostapd_data *hapd, u8 *eid);
00052 u8 * hostapd_eid_ext_supp_rates(struct hostapd_data *hapd, u8 *eid);
00053 u8 * hostapd_eid_ht_capabilities(struct hostapd_data *hapd, u8 *eid);
00054 u8 * hostapd_eid_ht_operation(struct hostapd_data *hapd, u8 *eid);
00055 int hostapd_ht_operation_update(struct hostapd_iface *iface);
00056 void ieee802_11_send_sa_query_req(struct hostapd_data *hapd,
00057 const u8 *addr, const u8 *trans_id);
00058 void hostapd_get_ht_capab(struct hostapd_data *hapd,
00059 struct ieee80211_ht_capabilities *ht_cap,
00060 struct ieee80211_ht_capabilities *neg_ht_cap);
00061 u16 copy_sta_ht_capab(struct sta_info *sta, const u8 *ht_capab,
00062 size_t ht_capab_len);
00063 void update_ht_state(struct hostapd_data *hapd, struct sta_info *sta);
00064 void hostapd_tx_status(struct hostapd_data *hapd, const u8 *addr,
00065 const u8 *buf, size_t len, int ack);
00066 void ieee802_11_rx_from_unknown(struct hostapd_data *hapd, const u8 *src,
00067 int wds);
00068
00069 #endif