1 #ifndef __NET_WIRELESS_NL80211_H 2 #define __NET_WIRELESS_NL80211_H 3 4 #include "core.h" 5 6 int nl80211_init(void); 7 void nl80211_exit(void); 8 void nl80211_notify_dev_rename(struct cfg80211_registered_device *rdev); 9 void nl80211_send_scan_start(struct cfg80211_registered_device *rdev, 10 struct wireless_dev *wdev); 11 void nl80211_send_scan_done(struct cfg80211_registered_device *rdev, 12 struct wireless_dev *wdev); 13 void nl80211_send_scan_aborted(struct cfg80211_registered_device *rdev, 14 struct wireless_dev *wdev); 15 void nl80211_send_sched_scan(struct cfg80211_registered_device *rdev, 16 struct net_device *netdev, u32 cmd); 17 void nl80211_send_sched_scan_results(struct cfg80211_registered_device *rdev, 18 struct net_device *netdev); 19 void nl80211_send_reg_change_event(struct regulatory_request *request); 20 void nl80211_send_rx_auth(struct cfg80211_registered_device *rdev, 21 struct net_device *netdev, 22 const u8 *buf, size_t len, gfp_t gfp); 23 void nl80211_send_rx_assoc(struct cfg80211_registered_device *rdev, 24 struct net_device *netdev, 25 const u8 *buf, size_t len, gfp_t gfp); 26 void nl80211_send_deauth(struct cfg80211_registered_device *rdev, 27 struct net_device *netdev, 28 const u8 *buf, size_t len, gfp_t gfp); 29 void nl80211_send_disassoc(struct cfg80211_registered_device *rdev, 30 struct net_device *netdev, 31 const u8 *buf, size_t len, gfp_t gfp); 32 void nl80211_send_unprot_deauth(struct cfg80211_registered_device *rdev, 33 struct net_device *netdev, 34 const u8 *buf, size_t len, gfp_t gfp); 35 void nl80211_send_unprot_disassoc(struct cfg80211_registered_device *rdev, 36 struct net_device *netdev, 37 const u8 *buf, size_t len, gfp_t gfp); 38 void nl80211_send_auth_timeout(struct cfg80211_registered_device *rdev, 39 struct net_device *netdev, 40 const u8 *addr, gfp_t gfp); 41 void nl80211_send_assoc_timeout(struct cfg80211_registered_device *rdev, 42 struct net_device *netdev, 43 const u8 *addr, gfp_t gfp); 44 void nl80211_send_connect_result(struct cfg80211_registered_device *rdev, 45 struct net_device *netdev, const u8 *bssid, 46 const u8 *req_ie, size_t req_ie_len, 47 const u8 *resp_ie, size_t resp_ie_len, 48 u16 status, gfp_t gfp); 49 void nl80211_send_roamed(struct cfg80211_registered_device *rdev, 50 struct net_device *netdev, const u8 *bssid, 51 const u8 *req_ie, size_t req_ie_len, 52 const u8 *resp_ie, size_t resp_ie_len, gfp_t gfp); 53 void nl80211_send_disconnected(struct cfg80211_registered_device *rdev, 54 struct net_device *netdev, u16 reason, 55 const u8 *ie, size_t ie_len, bool from_ap); 56 57 void nl80211_send_new_peer_candidate(struct cfg80211_registered_device *rdev, 58 struct net_device *netdev, 59 const u8 *macaddr, const u8* ie, u8 ie_len, 60 gfp_t gfp); 61 void 62 nl80211_michael_mic_failure(struct cfg80211_registered_device *rdev, 63 struct net_device *netdev, const u8 *addr, 64 enum nl80211_key_type key_type, 65 int key_id, const u8 *tsc, gfp_t gfp); 66 67 void 68 nl80211_send_beacon_hint_event(struct wiphy *wiphy, 69 struct ieee80211_channel *channel_before, 70 struct ieee80211_channel *channel_after); 71 72 void nl80211_send_ibss_bssid(struct cfg80211_registered_device *rdev, 73 struct net_device *netdev, const u8 *bssid, 74 gfp_t gfp); 75 76 void nl80211_send_remain_on_channel(struct cfg80211_registered_device *rdev, 77 struct wireless_dev *wdev, u64 cookie, 78 struct ieee80211_channel *chan, 79 enum nl80211_channel_type channel_type, 80 unsigned int duration, gfp_t gfp); 81 void nl80211_send_remain_on_channel_cancel( 82 struct cfg80211_registered_device *rdev, 83 struct wireless_dev *wdev, 84 u64 cookie, struct ieee80211_channel *chan, 85 enum nl80211_channel_type channel_type, gfp_t gfp); 86 87 void nl80211_send_sta_event(struct cfg80211_registered_device *rdev, 88 struct net_device *dev, const u8 *mac_addr, 89 struct station_info *sinfo, gfp_t gfp); 90 void nl80211_send_sta_del_event(struct cfg80211_registered_device *rdev, 91 struct net_device *dev, const u8 *mac_addr, 92 gfp_t gfp); 93 94 int nl80211_send_mgmt(struct cfg80211_registered_device *rdev, 95 struct wireless_dev *wdev, u32 nlpid, 96 int freq, int sig_dbm, 97 const u8 *buf, size_t len, gfp_t gfp); 98 void nl80211_send_mgmt_tx_status(struct cfg80211_registered_device *rdev, 99 struct wireless_dev *wdev, u64 cookie, 100 const u8 *buf, size_t len, bool ack, 101 gfp_t gfp); 102 103 void 104 nl80211_send_cqm_rssi_notify(struct cfg80211_registered_device *rdev, 105 struct net_device *netdev, 106 enum nl80211_cqm_rssi_threshold_event rssi_event, 107 gfp_t gfp); 108 void 109 nl80211_send_cqm_pktloss_notify(struct cfg80211_registered_device *rdev, 110 struct net_device *netdev, const u8 *peer, 111 u32 num_packets, gfp_t gfp); 112 113 void 114 nl80211_send_cqm_txe_notify(struct cfg80211_registered_device *rdev, 115 struct net_device *netdev, const u8 *peer, 116 u32 num_packets, u32 rate, u32 intvl, gfp_t gfp); 117 118 void nl80211_gtk_rekey_notify(struct cfg80211_registered_device *rdev, 119 struct net_device *netdev, const u8 *bssid, 120 const u8 *replay_ctr, gfp_t gfp); 121 122 void nl80211_pmksa_candidate_notify(struct cfg80211_registered_device *rdev, 123 struct net_device *netdev, int index, 124 const u8 *bssid, bool preauth, gfp_t gfp); 125 126 void nl80211_ch_switch_notify(struct cfg80211_registered_device *rdev, 127 struct net_device *dev, int freq, 128 enum nl80211_channel_type type, gfp_t gfp); 129 130 bool nl80211_unexpected_frame(struct net_device *dev, 131 const u8 *addr, gfp_t gfp); 132 bool nl80211_unexpected_4addr_frame(struct net_device *dev, 133 const u8 *addr, gfp_t gfp); 134 135 #endif /* __NET_WIRELESS_NL80211_H */ 136