ieee80211_ioctl.h.svn-base

来自「最新之atheros芯片driver source code, 基于linux操」· SVN-BASE 代码 · 共 711 行 · 第 1/3 页

SVN-BASE
711
字号
 * ap (to effect a station). */struct ieee80211req_mlme {	u_int8_t im_op;			/* operation to perform */#define	IEEE80211_MLME_ASSOC		1	/* associate station */#define	IEEE80211_MLME_DISASSOC		2	/* disassociate station */#define	IEEE80211_MLME_DEAUTH		3	/* deauthenticate station */#define	IEEE80211_MLME_AUTHORIZE	4	/* authorize station */#define	IEEE80211_MLME_UNAUTHORIZE	5	/* unauthorize station */#define IEEE80211_MLME_CLEAR_STATS	6	/* clear station statistic */	u_int8_t im_ssid_len;		/* length of optional ssid */	u_int16_t im_reason;		/* 802.11 reason code */	u_int8_t im_macaddr[IEEE80211_ADDR_LEN];	u_int8_t im_ssid[IEEE80211_NWID_LEN];};/*  * MAC ACL operations. */enum {	IEEE80211_MACCMD_POLICY_OPEN	= 0,	/* set policy: no ACLs */	IEEE80211_MACCMD_POLICY_ALLOW	= 1,	/* set policy: allow traffic */	IEEE80211_MACCMD_POLICY_DENY	= 2,	/* set policy: deny traffic */	IEEE80211_MACCMD_FLUSH		= 3,	/* flush ACL database */	IEEE80211_MACCMD_DETACH		= 4,	/* detach ACL policy */};/* * Set the active channel list.  Note this list is * intersected with the available channel list in * calculating the set of channels actually used in * scanning. */struct ieee80211req_chanlist {	u_int8_t ic_channels[IEEE80211_CHAN_BYTES];};/* * Get the active channel list info. */struct ieee80211req_chaninfo {	u_int ic_nchans;	struct ieee80211_channel ic_chans[IEEE80211_CHAN_MAX];};/* * Retrieve the WPA/RSN information element for an associated station. */struct ieee80211req_wpaie {	u_int8_t	wpa_macaddr[IEEE80211_ADDR_LEN];	u_int8_t	wpa_ie[IEEE80211_MAX_OPT_IE];	u_int8_t	rsn_ie[IEEE80211_MAX_OPT_IE];};/* * Retrieve per-node statistics. */struct ieee80211req_sta_stats {	union {		/* NB: explicitly force 64-bit alignment */		u_int8_t macaddr[IEEE80211_ADDR_LEN];		u_int64_t pad;	} is_u;	struct ieee80211_nodestats is_stats;};/* * Station information block; the mac address is used * to retrieve other data like stats, unicast key, etc. */struct ieee80211req_sta_info {	u_int16_t isi_len;		/* length (mult of 4) */	u_int16_t isi_freq;		/* MHz */	u_int16_t isi_flags;		/* channel flags */	u_int16_t isi_state;		/* state flags */	u_int8_t isi_authmode;		/* authentication algorithm */	u_int8_t isi_rssi;	u_int16_t isi_capinfo;		/* capabilities */	u_int8_t isi_athflags;		/* Atheros capabilities */	u_int8_t isi_erp;		/* ERP element */	u_int8_t isi_macaddr[IEEE80211_ADDR_LEN];	u_int8_t isi_nrates;		/* negotiated rates */	u_int8_t isi_rates[IEEE80211_RATE_MAXSIZE];	u_int8_t isi_txrate;		/* index to isi_rates[] */	u_int16_t isi_ie_len;		/* IE length */	u_int16_t isi_associd;		/* assoc response */	u_int16_t isi_txpower;		/* current tx power */	u_int16_t isi_vlan;		/* vlan tag */	u_int16_t isi_txseqs[17];	/* seq to be transmitted */	u_int16_t isi_rxseqs[17];	/* seq previous for qos frames*/	u_int16_t isi_inact;		/* inactivity timer */	u_int8_t isi_uapsd;		/* UAPSD queues */	u_int8_t isi_opmode;		/* sta operating mode */	/* XXX frag state? */	/* variable length IE data */};enum {	IEEE80211_STA_OPMODE_NORMAL,	IEEE80211_STA_OPMODE_XR};/* * Retrieve per-station information; to retrieve all * specify a mac address of ff:ff:ff:ff:ff:ff. */struct ieee80211req_sta_req {	union {		/* NB: explicitly force 64-bit alignment */		u_int8_t macaddr[IEEE80211_ADDR_LEN];		u_int64_t pad;	} is_u;	struct ieee80211req_sta_info info[1];	/* variable length */};/* * Get/set per-station tx power cap. */struct ieee80211req_sta_txpow {	u_int8_t	it_macaddr[IEEE80211_ADDR_LEN];	u_int8_t	it_txpow;};/* * WME parameters are set and return using i_val and i_len. * i_val holds the value itself.  i_len specifies the AC * and, as appropriate, then high bit specifies whether the * operation is to be applied to the BSS or ourself. */#define	IEEE80211_WMEPARAM_SELF	0x0000		/* parameter applies to self */#define	IEEE80211_WMEPARAM_BSS	0x8000		/* parameter applies to BSS */#define	IEEE80211_WMEPARAM_VAL	0x7fff		/* parameter value *//* * Scan result data returned for IEEE80211_IOC_SCAN_RESULTS. */struct ieee80211req_scan_result {	u_int16_t isr_len;		/* length (mult of 4) */	u_int16_t isr_freq;		/* MHz */	u_int16_t isr_flags;		/* channel flags */	u_int8_t isr_noise;	u_int8_t isr_rssi;	u_int8_t isr_intval;		/* beacon interval */	u_int16_t isr_capinfo;		/* capabilities */	u_int8_t isr_erp;		/* ERP element */	u_int8_t isr_bssid[IEEE80211_ADDR_LEN];	u_int8_t isr_nrates;	u_int8_t isr_rates[IEEE80211_RATE_MAXSIZE];	u_int8_t isr_ssid_len;		/* SSID length */	u_int8_t isr_ie_len;		/* IE length */	u_int8_t isr_pad[5];	/* variable length SSID followed by IE data */};#ifdef __FreeBSD__/* * FreeBSD-style ioctls. *//* the first member must be matched with struct ifreq */struct ieee80211req {	char i_name[IFNAMSIZ];	/* if_name, e.g. "wi0" */	u_int16_t i_type;	/* req type */	int16_t 	i_val;		/* Index or simple value */	int16_t 	i_len;		/* Index or simple value */	void *i_data;		/* Extra data */};#define	SIOCS80211		 _IOW('i', 234, struct ieee80211req)#define	SIOCG80211		_IOWR('i', 235, struct ieee80211req)#define	SIOCG80211STATS		_IOWR('i', 236, struct ifreq)#define	SIOC80211IFCREATE	_IOWR('i', 237, struct ifreq)#define	SIOC80211IFDESTROY	 _IOW('i', 238, struct ifreq)#define IEEE80211_IOC_SSID		1#define IEEE80211_IOC_NUMSSIDS		2#define IEEE80211_IOC_WEP		3#define 	IEEE80211_WEP_NOSUP		-1#define 	IEEE80211_WEP_OFF		0#define 	IEEE80211_WEP_ON		1#define 	IEEE80211_WEP_MIXED		2#define IEEE80211_IOC_WEPKEY		4#define IEEE80211_IOC_NUMWEPKEYS	5#define IEEE80211_IOC_WEPTXKEY		6#define IEEE80211_IOC_AUTHMODE		7#define IEEE80211_IOC_STATIONNAME	8#define IEEE80211_IOC_CHANNEL		9#define IEEE80211_IOC_POWERSAVE		10#define 	IEEE80211_POWERSAVE_NOSUP	-1#define 	IEEE80211_POWERSAVE_OFF		0#define 	IEEE80211_POWERSAVE_CAM		1#define 	IEEE80211_POWERSAVE_PSP		2#define 	IEEE80211_POWERSAVE_PSP_CAM	3#define 	IEEE80211_POWERSAVE_ON		IEEE80211_POWERSAVE_CAM#define IEEE80211_IOC_POWERSAVESLEEP	11#define	IEEE80211_IOC_RTSTHRESHOLD	12#define IEEE80211_IOC_PROTMODE		13#define 	IEEE80211_PROTMODE_OFF		0#define 	IEEE80211_PROTMODE_CTS		1#define 	IEEE80211_PROTMODE_RTSCTS	2#define	IEEE80211_IOC_TXPOWER		14	/* global tx power limit */#define	IEEE80211_IOC_BSSID		15#define	IEEE80211_IOC_ROAMING		16	/* roaming mode */#define	IEEE80211_IOC_PRIVACY		17	/* privacy invoked */#define	IEEE80211_IOC_DROPUNENCRYPTED	18	/* discard unencrypted frames */#define	IEEE80211_IOC_WPAKEY		19#define	IEEE80211_IOC_DELKEY		20#define	IEEE80211_IOC_MLME		21#define	IEEE80211_IOC_OPTIE		22	/* optional info. element */#define	IEEE80211_IOC_SCAN_REQ		23#define	IEEE80211_IOC_SCAN_RESULTS	24#define	IEEE80211_IOC_COUNTERMEASURES	25	/* WPA/TKIP countermeasures */#define	IEEE80211_IOC_WPA		26	/* WPA mode (0,1,2) */#define	IEEE80211_IOC_CHANLIST		27	/* channel list */#define	IEEE80211_IOC_WME		28	/* WME mode (on, off) */#define	IEEE80211_IOC_HIDESSID		29	/* hide SSID mode (on, off) */#define IEEE80211_IOC_APBRIDGE		30	/* AP inter-sta bridging */#define	IEEE80211_IOC_MCASTCIPHER	31	/* multicast/default cipher */#define	IEEE80211_IOC_MCASTKEYLEN	32	/* multicast key length */#define	IEEE80211_IOC_UCASTCIPHERS	33	/* unicast cipher suites */#define	IEEE80211_IOC_UCASTCIPHER	34	/* unicast cipher */#define	IEEE80211_IOC_UCASTKEYLEN	35	/* unicast key length */#define	IEEE80211_IOC_DRIVER_CAPS	36	/* driver capabilities */#define	IEEE80211_IOC_KEYMGTALGS	37	/* key management algorithms */#define	IEEE80211_IOC_RSNCAPS		38	/* RSN capabilities */#define	IEEE80211_IOC_WPAIE		39	/* WPA information element */#define	IEEE80211_IOC_STA_STATS		40	/* per-station statistics */#define	IEEE80211_IOC_MACCMD		41	/* MAC ACL operation */#define	IEEE80211_IOC_TXPOWMAX		43	/* max tx power for channel */#define	IEEE80211_IOC_STA_TXPOW		44	/* per-station tx power limit */#define	IEEE80211_IOC_STA_INFO		45	/* station/neighbor info */#define	IEEE80211_IOC_WME_CWMIN		46	/* WME: ECWmin */#define	IEEE80211_IOC_WME_CWMAX		47	/* WME: ECWmax */#define	IEEE80211_IOC_WME_AIFS		48	/* WME: AIFSN */#define	IEEE80211_IOC_WME_TXOPLIMIT	49	/* WME: txops limit */#define	IEEE80211_IOC_WME_ACM		50	/* WME: ACM (bss only) */#define	IEEE80211_IOC_WME_ACKPOLICY	51	/* WME: ACK policy (!bss only)*/#define	IEEE80211_IOC_DTIM_PERIOD	52	/* DTIM period (beacons) */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?