Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.28-rc9 92 lines 2.4 kB view raw
1#ifndef HOSTAP_80211_H 2#define HOSTAP_80211_H 3 4#include <linux/types.h> 5#include <net/ieee80211_crypt.h> 6 7struct hostap_ieee80211_mgmt { 8 __le16 frame_control; 9 __le16 duration; 10 u8 da[6]; 11 u8 sa[6]; 12 u8 bssid[6]; 13 __le16 seq_ctrl; 14 union { 15 struct { 16 __le16 auth_alg; 17 __le16 auth_transaction; 18 __le16 status_code; 19 /* possibly followed by Challenge text */ 20 u8 variable[0]; 21 } __attribute__ ((packed)) auth; 22 struct { 23 __le16 reason_code; 24 } __attribute__ ((packed)) deauth; 25 struct { 26 __le16 capab_info; 27 __le16 listen_interval; 28 /* followed by SSID and Supported rates */ 29 u8 variable[0]; 30 } __attribute__ ((packed)) assoc_req; 31 struct { 32 __le16 capab_info; 33 __le16 status_code; 34 __le16 aid; 35 /* followed by Supported rates */ 36 u8 variable[0]; 37 } __attribute__ ((packed)) assoc_resp, reassoc_resp; 38 struct { 39 __le16 capab_info; 40 __le16 listen_interval; 41 u8 current_ap[6]; 42 /* followed by SSID and Supported rates */ 43 u8 variable[0]; 44 } __attribute__ ((packed)) reassoc_req; 45 struct { 46 __le16 reason_code; 47 } __attribute__ ((packed)) disassoc; 48 struct { 49 } __attribute__ ((packed)) probe_req; 50 struct { 51 u8 timestamp[8]; 52 __le16 beacon_int; 53 __le16 capab_info; 54 /* followed by some of SSID, Supported rates, 55 * FH Params, DS Params, CF Params, IBSS Params, TIM */ 56 u8 variable[0]; 57 } __attribute__ ((packed)) beacon, probe_resp; 58 } u; 59} __attribute__ ((packed)); 60 61 62#define IEEE80211_MGMT_HDR_LEN 24 63#define IEEE80211_DATA_HDR3_LEN 24 64#define IEEE80211_DATA_HDR4_LEN 30 65 66 67struct hostap_80211_rx_status { 68 u32 mac_time; 69 u8 signal; 70 u8 noise; 71 u16 rate; /* in 100 kbps */ 72}; 73 74/* prism2_rx_80211 'type' argument */ 75enum { 76 PRISM2_RX_MONITOR, PRISM2_RX_MGMT, PRISM2_RX_NON_ASSOC, 77 PRISM2_RX_NULLFUNC_ACK 78}; 79 80int prism2_rx_80211(struct net_device *dev, struct sk_buff *skb, 81 struct hostap_80211_rx_status *rx_stats, int type); 82void hostap_80211_rx(struct net_device *dev, struct sk_buff *skb, 83 struct hostap_80211_rx_status *rx_stats); 84void hostap_dump_rx_80211(const char *name, struct sk_buff *skb, 85 struct hostap_80211_rx_status *rx_stats); 86 87void hostap_dump_tx_80211(const char *name, struct sk_buff *skb); 88int hostap_data_start_xmit(struct sk_buff *skb, struct net_device *dev); 89int hostap_mgmt_start_xmit(struct sk_buff *skb, struct net_device *dev); 90int hostap_master_start_xmit(struct sk_buff *skb, struct net_device *dev); 91 92#endif /* HOSTAP_80211_H */