⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ieee80211_ioctl.h

📁 Linux下wifi实现
💻 H
📖 第 1 页 / 共 2 页
字号:
	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) */#define	IEEE80211_IOC_BEACON_INTERVAL	53	/* beacon interval (ms) */#define	IEEE80211_IOC_ADDMAC		54	/* add sta to MAC ACL table */#define	IEEE80211_IOC_DELMAC		55	/* del sta from MAC ACL table */#define	IEEE80211_IOC_FF		56	/* ATH fast frames (on, off) */#define	IEEE80211_IOC_TURBOP		57	/* ATH turbo' (on, off) *//* * 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 */};#endif /* __FreeBSD__ */#ifdef __linux__/* * Wireless Extensions API, private ioctl interfaces. * * NB: Even-numbered ioctl numbers have set semantics and are privileged! *     (regardless of the incorrect comment in wireless.h!) */#ifdef __KERNEL__#include <linux/if.h>#endif#define	IEEE80211_IOCTL_SETPARAM	(SIOCIWFIRSTPRIV+0)#define	IEEE80211_IOCTL_GETPARAM	(SIOCIWFIRSTPRIV+1)#define	IEEE80211_IOCTL_SETMODE		(SIOCIWFIRSTPRIV+2)#define	IEEE80211_IOCTL_GETMODE		(SIOCIWFIRSTPRIV+3)#define	IEEE80211_IOCTL_SETWMMPARAMS	(SIOCIWFIRSTPRIV+4)#define	IEEE80211_IOCTL_GETWMMPARAMS	(SIOCIWFIRSTPRIV+5)#define	IEEE80211_IOCTL_SETCHANLIST	(SIOCIWFIRSTPRIV+6)#define	IEEE80211_IOCTL_GETCHANLIST	(SIOCIWFIRSTPRIV+7)#define	IEEE80211_IOCTL_CHANSWITCH	(SIOCIWFIRSTPRIV+8)#define	IEEE80211_IOCTL_GETCHANINFO	(SIOCIWFIRSTPRIV+13)#define	IEEE80211_IOCTL_SETOPTIE	(SIOCIWFIRSTPRIV+14)#define	IEEE80211_IOCTL_GETOPTIE	(SIOCIWFIRSTPRIV+15)#define	IEEE80211_IOCTL_SETMLME		(SIOCIWFIRSTPRIV+16)#define	IEEE80211_IOCTL_SETKEY		(SIOCIWFIRSTPRIV+18)#define	IEEE80211_IOCTL_DELKEY		(SIOCIWFIRSTPRIV+20)#define	IEEE80211_IOCTL_ADDMAC		(SIOCIWFIRSTPRIV+22)#define	IEEE80211_IOCTL_DELMAC		(SIOCIWFIRSTPRIV+24)#define	IEEE80211_IOCTL_WDSADDMAC	(SIOCIWFIRSTPRIV+26)#define	IEEE80211_IOCTL_WDSDELMAC	(SIOCIWFIRSTPRIV+28)#define	IEEE80211_IOCTL_KICKMAC		(SIOCIWFIRSTPRIV+30)enum {	IEEE80211_WMMPARAMS_CWMIN       = 1,	IEEE80211_WMMPARAMS_CWMAX       = 2,	IEEE80211_WMMPARAMS_AIFS       	= 3,	IEEE80211_WMMPARAMS_TXOPLIMIT	= 4,	IEEE80211_WMMPARAMS_ACM		= 5,	IEEE80211_WMMPARAMS_NOACKPOLICY	= 6,	};enum {	IEEE80211_PARAM_TURBO		= 1,	/* turbo mode */	IEEE80211_PARAM_MODE		= 2,	/* phy mode (11a, 11b, etc.) */	IEEE80211_PARAM_AUTHMODE	= 3,	/* authentication mode */	IEEE80211_PARAM_PROTMODE	= 4,	/* 802.11g protection */	IEEE80211_PARAM_MCASTCIPHER	= 5,	/* multicast/default cipher */	IEEE80211_PARAM_MCASTKEYLEN	= 6,	/* multicast key length */	IEEE80211_PARAM_UCASTCIPHERS	= 7,	/* unicast cipher suites */	IEEE80211_PARAM_UCASTCIPHER	= 8,	/* unicast cipher */	IEEE80211_PARAM_UCASTKEYLEN	= 9,	/* unicast key length */	IEEE80211_PARAM_WPA		= 10,	/* WPA mode (0,1,2) */	IEEE80211_PARAM_ROAMING		= 12,	/* roaming mode */	IEEE80211_PARAM_PRIVACY		= 13,	/* privacy invoked */	IEEE80211_PARAM_COUNTERMEASURES	= 14,	/* WPA/TKIP countermeasures */	IEEE80211_PARAM_DROPUNENCRYPTED	= 15,	/* discard unencrypted frames */	IEEE80211_PARAM_DRIVER_CAPS	= 16,	/* driver capabilities */	IEEE80211_PARAM_MACCMD		= 17,	/* MAC ACL operation */	IEEE80211_PARAM_WMM		= 18,	/* WMM mode (on, off) */	IEEE80211_PARAM_HIDESSID	= 19,	/* hide SSID mode (on, off) */	IEEE80211_PARAM_APBRIDGE    	= 20,   /* AP inter-sta bridging */	IEEE80211_PARAM_KEYMGTALGS	= 21,	/* key management algorithms */	IEEE80211_PARAM_RSNCAPS		= 22,	/* RSN capabilities */	IEEE80211_PARAM_INACT		= 23,	/* station inactivity timeout */	IEEE80211_PARAM_INACT_AUTH	= 24,	/* station auth inact timeout */	IEEE80211_PARAM_INACT_INIT	= 25,	/* station init inact timeout */	IEEE80211_PARAM_ABOLT		= 26,	/* Atheros Adv. Capabilities */	IEEE80211_PARAM_DTIM_PERIOD	= 28,	/* DTIM period (beacons) */	IEEE80211_PARAM_BEACON_INTERVAL	= 29,	/* beacon interval (ms) */	IEEE80211_PARAM_DOTH		= 30,	/* 11.h is on/off */	IEEE80211_PARAM_PWRTARGET	= 31,	/* Current Channel Pwr Constraint */	IEEE80211_PARAM_GENREASSOC	= 32,	/* Generate a reassociation request */	IEEE80211_PARAM_COMPRESSION	= 33,	/* compression */	IEEE80211_PARAM_FF		= 34,	/* fast frames support  */	IEEE80211_PARAM_XR		= 35,	/* XR support */	IEEE80211_PARAM_BURST		= 36,	/* burst mode */	IEEE80211_PARAM_PUREG		= 37,	/* pure 11g (no 11b stations) */	IEEE80211_PARAM_AR		= 38,	/* AR support */	IEEE80211_PARAM_WDS		= 39,	/* Enable 4 address processing */	IEEE80211_PARAM_BGSCAN		= 40,	/* bg scanning (on, off) */	IEEE80211_PARAM_BGSCAN_IDLE	= 41,	/* bg scan idle threshold */	IEEE80211_PARAM_BGSCAN_INTERVAL	= 42,	/* bg scan interval */	IEEE80211_PARAM_MCAST_RATE	= 43,	/* Multicast Tx Rate */	IEEE80211_PARAM_COVERAGE_CLASS	= 44,	/* coverage class */	IEEE80211_PARAM_COUNTRY_IE	= 45,	/* enable country IE */	IEEE80211_PARAM_SCANVALID	= 46,	/* scan cache valid threshold */	IEEE80211_PARAM_ROAM_RSSI_11A	= 47,	/* rssi threshold in 11a */	IEEE80211_PARAM_ROAM_RSSI_11B	= 48,	/* rssi threshold in 11b */	IEEE80211_PARAM_ROAM_RSSI_11G	= 49,	/* rssi threshold in 11g */	IEEE80211_PARAM_ROAM_RATE_11A	= 50,	/* tx rate threshold in 11a */	IEEE80211_PARAM_ROAM_RATE_11B	= 51,	/* tx rate threshold in 11b */	IEEE80211_PARAM_ROAM_RATE_11G	= 52,	/* tx rate threshold in 11g */	IEEE80211_PARAM_UAPSDINFO	= 53,	/* value for qos info field */	IEEE80211_PARAM_SLEEP		= 54,	/* force sleep/wake */	IEEE80211_PARAM_QOSNULL		= 55,	/* force sleep/wake */	IEEE80211_PARAM_PSPOLL		= 56,	/* force ps-poll generation (sta only) */	IEEE80211_PARAM_EOSPDROP	= 57,	/* force uapsd EOSP drop (ap only) */	IEEE80211_PARAM_MARKDFS		= 58,	/* mark a dfs interference channel when found */	IEEE80211_PARAM_REGCLASS	= 59,	/* enable regclass ids in country IE */	IEEE80211_PARAM_DROPUNENC_EAPOL	= 60,	/* drop unencrypted eapol frames */};#define	SIOCG80211STATS			(SIOCDEVPRIVATE+2)/* NB: require in+out parameters so cannot use wireless extensions, yech */#define	IEEE80211_IOCTL_GETKEY		(SIOCDEVPRIVATE+3)#define	IEEE80211_IOCTL_GETWPAIE	(SIOCDEVPRIVATE+4)#define	IEEE80211_IOCTL_STA_STATS	(SIOCDEVPRIVATE+5)#define	IEEE80211_IOCTL_STA_INFO	(SIOCDEVPRIVATE+6)#define	SIOC80211IFCREATE		(SIOCDEVPRIVATE+7)#define	SIOC80211IFDESTROY	 	(SIOCDEVPRIVATE+8)#define	IEEE80211_IOCTL_SCAN_RESULTS	(SIOCDEVPRIVATE+9)struct ieee80211_clone_params {	char icp_name[IFNAMSIZ];		/* device name */	u_int16_t icp_opmode;			/* operating mode */	u_int16_t icp_flags;			/* see below */#define	IEEE80211_CLONE_BSSID	0x0001		/* allocate unique mac/bssid */#define	IEEE80211_NO_STABEACONS	0x0002		/* Do not setup the station beacon timers */};#endif /* __linux__ */#endif /* _NET80211_IEEE80211_IOCTL_H_ */

⌨️ 快捷键说明

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