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

📄 if_media.h

📁 Linux下wifi实现
💻 H
📖 第 1 页 / 共 2 页
字号:
#define	IFM_ISHIFT	28		/* Instance shift */#define	IFM_OMASK	0x0000ff00	/* Type specific options */#define	IFM_MMASK	0x00070000	/* Mode */#define	IFM_MSHIFT	16		/* Mode shift */#define	IFM_GMASK	0x0ff00000	/* Global options *//* * Status bits */#define	IFM_AVALID	0x00000001	/* Active bit valid */#define	IFM_ACTIVE	0x00000002	/* Interface attached to working net *//* * Macros to extract various bits of information from the media word. */#define	IFM_TYPE(x)		((x) & IFM_NMASK)#define	IFM_SUBTYPE(x)		((x) & IFM_TMASK)#define	IFM_TYPE_OPTIONS(x)	((x) & IFM_OMASK)#define	IFM_INST(x)		(((x) & IFM_IMASK) >> IFM_ISHIFT)#define	IFM_OPTIONS(x)		((x) & (IFM_OMASK|IFM_GMASK))#define	IFM_MODE(x)		((x) & IFM_MMASK)#define	IFM_INST_MAX		IFM_INST(IFM_IMASK)/* * Macro to create a media word. */#define	IFM_MAKEWORD(type, subtype, options, instance)			\	((type) | (subtype) | (options) | ((instance) << IFM_ISHIFT))#define	IFM_MAKEMODE(mode) \	(((mode) << IFM_MSHIFT) & IFM_MMASK)/* * NetBSD extension not defined in the BSDI API.  This is used in various * places to get the canonical description for a given type/subtype. * * NOTE: all but the top-level type descriptions must contain NO whitespace! * Otherwise, parsing these in ifconfig(8) would be a nightmare. */struct ifmedia_description {	int	ifmt_word;		/* word value; may be masked */	const char *ifmt_string;	/* description */};#define	IFM_TYPE_DESCRIPTIONS {						\	{ IFM_ETHER,		"Ethernet" },				\	{ IFM_TOKEN,		"Token ring" },				\	{ IFM_FDDI,		"FDDI" },				\	{ IFM_IEEE80211,	"IEEE 802.11 Wireless Ethernet" },	\	{ 0, NULL },							\}#define	IFM_SUBTYPE_ETHERNET_DESCRIPTIONS {				\	{ IFM_10_T,	"10baseT/UTP" },				\	{ IFM_10_2,	"10base2/BNC" },				\	{ IFM_10_5,	"10base5/AUI" },				\	{ IFM_100_TX,	"100baseTX" },					\	{ IFM_100_FX,	"100baseFX" },					\	{ IFM_100_T4,	"100baseT4" },					\	{ IFM_100_VG,	"100baseVG" },					\	{ IFM_100_T2,	"100baseT2" },					\	{ IFM_10_STP,	"10baseSTP" },					\	{ IFM_10_FL,	"10baseFL" },					\	{ IFM_1000_SX,	"1000baseSX" },					\	{ IFM_1000_LX,	"1000baseLX" },					\	{ IFM_1000_CX,	"1000baseCX" },					\	{ IFM_1000_T,	"1000baseTX" },					\	{ IFM_1000_T,	"1000baseT" },					\	{ IFM_HPNA_1,	"homePNA" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_ETHERNET_ALIASES {					\	{ IFM_10_T,	"UTP" },					\	{ IFM_10_T,	"10UTP" },					\	{ IFM_10_2,	"BNC" },					\	{ IFM_10_2,	"10BNC" },					\	{ IFM_10_5,	"AUI" },					\	{ IFM_10_5,	"10AUI" },					\	{ IFM_100_TX,	"100TX" },					\	{ IFM_100_T4,	"100T4" },					\	{ IFM_100_VG,	"100VG" },					\	{ IFM_100_T2,	"100T2" },					\	{ IFM_10_STP,	"10STP" },					\	{ IFM_10_FL,	"10FL" },					\	{ IFM_1000_SX,	"1000SX" },					\	{ IFM_1000_LX,	"1000LX" },					\	{ IFM_1000_CX,	"1000CX" },					\	{ IFM_1000_T,	"1000TX" },					\	{ IFM_1000_T,	"1000T" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_ETHERNET_OPTION_DESCRIPTIONS {			\	{ 0, NULL },							\}#define	IFM_SUBTYPE_TOKENRING_DESCRIPTIONS {				\	{ IFM_TOK_STP4,	"DB9/4Mbit" },					\	{ IFM_TOK_STP16, "DB9/16Mbit" },				\	{ IFM_TOK_UTP4,	"UTP/4Mbit" },					\	{ IFM_TOK_UTP16, "UTP/16Mbit" },				\	{ IFM_TOK_STP100, "STP/100Mbit" },				\	{ IFM_TOK_UTP100, "UTP/100Mbit" },				\	{ 0, NULL },							\}#define	IFM_SUBTYPE_TOKENRING_ALIASES {					\	{ IFM_TOK_STP4,	"4STP" },					\	{ IFM_TOK_STP16, "16STP" },					\	{ IFM_TOK_UTP4,	"4UTP" },					\	{ IFM_TOK_UTP16, "16UTP" },					\	{ IFM_TOK_STP100, "100STP" },					\	{ IFM_TOK_UTP100, "100UTP" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_TOKENRING_OPTION_DESCRIPTIONS {			\	{ IFM_TOK_ETR,	"EarlyTokenRelease" },				\	{ IFM_TOK_SRCRT, "SourceRouting" },				\	{ IFM_TOK_ALLR,	"AllRoutes" },					\	{ IFM_TOK_DTR,	"Dedicated" },					\	{ IFM_TOK_CLASSIC,"Classic" },					\	{ IFM_TOK_AUTO,	" " },						\	{ 0, NULL },							\}#define	IFM_SUBTYPE_FDDI_DESCRIPTIONS {					\	{ IFM_FDDI_SMF, "Single-mode" },				\	{ IFM_FDDI_MMF, "Multi-mode" },					\	{ IFM_FDDI_UTP, "UTP" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_FDDI_ALIASES {					\	{ IFM_FDDI_SMF,	"SMF" },					\	{ IFM_FDDI_MMF,	"MMF" },					\	{ IFM_FDDI_UTP,	"CDDI" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_FDDI_OPTION_DESCRIPTIONS {				\	{ IFM_FDDI_DA, "Dual-attach" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_IEEE80211_DESCRIPTIONS {				\	{ IFM_IEEE80211_FH1, "FH/1Mbps" },				\	{ IFM_IEEE80211_FH2, "FH/2Mbps" },				\	{ IFM_IEEE80211_DS1, "DS/1Mbps" },				\	{ IFM_IEEE80211_DS2, "DS/2Mbps" },				\	{ IFM_IEEE80211_DS5, "DS/5.5Mbps" },				\	{ IFM_IEEE80211_DS11, "DS/11Mbps" },				\	{ IFM_IEEE80211_DS22, "DS/22Mbps" },				\	{ IFM_IEEE80211_OFDM1_50, "OFDM/1.50Mbps" },			\	{ IFM_IEEE80211_OFDM2_25, "OFDM/2.25Mbps" },			\	{ IFM_IEEE80211_OFDM3, "OFDM/3Mbps" },				\	{ IFM_IEEE80211_OFDM4_50, "OFDM/4.5Mbps" },			\	{ IFM_IEEE80211_OFDM6, "OFDM/6Mbps" },				\	{ IFM_IEEE80211_OFDM9, "OFDM/9Mbps" },				\	{ IFM_IEEE80211_OFDM12, "OFDM/12Mbps" },			\	{ IFM_IEEE80211_OFDM13_5, "OFDM/13.5Mbps" },			\	{ IFM_IEEE80211_OFDM18, "OFDM/18Mbps" },			\	{ IFM_IEEE80211_OFDM24, "OFDM/24Mbps" },			\	{ IFM_IEEE80211_OFDM27, "OFDM/27Mbps" },			\	{ IFM_IEEE80211_OFDM36, "OFDM/36Mbps" },			\	{ IFM_IEEE80211_OFDM48, "OFDM/48Mbps" },			\	{ IFM_IEEE80211_OFDM54, "OFDM/54Mbps" },			\	{ IFM_IEEE80211_OFDM72, "OFDM/72Mbps" },			\	{ 0, NULL },							\}#define	IFM_SUBTYPE_IEEE80211_ALIASES {					\	{ IFM_IEEE80211_FH1, "FH1" },					\	{ IFM_IEEE80211_FH2, "FH2" },					\	{ IFM_IEEE80211_FH1, "FrequencyHopping/1Mbps" },		\	{ IFM_IEEE80211_FH2, "FrequencyHopping/2Mbps" },		\	{ IFM_IEEE80211_DS1, "DS1" },					\	{ IFM_IEEE80211_DS2, "DS2" },					\	{ IFM_IEEE80211_DS5, "DS5.5" },					\	{ IFM_IEEE80211_DS11, "DS11" },					\	{ IFM_IEEE80211_DS22, "DS22" },					\	{ IFM_IEEE80211_DS1, "DirectSequence/1Mbps" },			\	{ IFM_IEEE80211_DS2, "DirectSequence/2Mbps" },			\	{ IFM_IEEE80211_DS5, "DirectSequence/5.5Mbps" },		\	{ IFM_IEEE80211_DS11, "DirectSequence/11Mbps" },		\	{ IFM_IEEE80211_DS22, "DirectSequence/22Mbps" },		\	{ IFM_IEEE80211_OFDM1_50, "OFDM1.50Mpbs" },			\	{ IFM_IEEE80211_OFDM2_25, "OFDM2.25Mbps" },			\	{ IFM_IEEE80211_OFDM3, "OFDM3Mbps" },				\	{ IFM_IEEE80211_OFDM4_50, "OFDM4.5Mbps" },			\	{ IFM_IEEE80211_OFDM6, "OFDM6" },				\	{ IFM_IEEE80211_OFDM9, "OFDM9" },				\	{ IFM_IEEE80211_OFDM12, "OFDM12" },				\	{ IFM_IEEE80211_OFDM13_5, "OFDM13.5Mbps" },			\	{ IFM_IEEE80211_OFDM18, "OFDM18" },				\	{ IFM_IEEE80211_OFDM24, "OFDM24" },				\	{ IFM_IEEE80211_OFDM27, "OFDM27" },				\	{ IFM_IEEE80211_OFDM36, "OFDM36" },				\	{ IFM_IEEE80211_OFDM48, "OFDM48" },				\	{ IFM_IEEE80211_OFDM54, "OFDM54" },				\	{ IFM_IEEE80211_OFDM72, "OFDM72" },				\	{ IFM_IEEE80211_DS1, "CCK1" },					\	{ IFM_IEEE80211_DS2, "CCK2" },					\	{ IFM_IEEE80211_DS5, "CCK5.5" },				\	{ IFM_IEEE80211_DS11, "CCK11" },				\	{ 0, NULL },							\}#define	IFM_SUBTYPE_IEEE80211_OPTION_DESCRIPTIONS {			\	{ IFM_IEEE80211_ADHOC, "adhoc" },				\	{ IFM_IEEE80211_HOSTAP, "hostap" },				\	{ IFM_IEEE80211_IBSS, "ibss" },					\	{ IFM_IEEE80211_WDS, "wds" },					\	{ IFM_IEEE80211_TURBO, "turbo" },				\	{ 0, NULL },							\}#define	IFM_SUBTYPE_IEEE80211_MODE_DESCRIPTIONS {			\	{ IFM_IEEE80211_11A, "11a" },					\	{ IFM_IEEE80211_11B, "11b" },					\	{ IFM_IEEE80211_11G, "11g" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_SHARED_DESCRIPTIONS {				\	{ IFM_AUTO,	"autoselect" },					\	{ IFM_MANUAL,	"manual" },					\	{ IFM_NONE,	"none" },					\	{ 0, NULL },							\}#define	IFM_SUBTYPE_SHARED_ALIASES {					\	{ IFM_AUTO,	"auto" },					\	{ 0, NULL },							\}#define	IFM_SHARED_OPTION_DESCRIPTIONS {				\	{ IFM_FDX,	"full-duplex" },				\	{ IFM_HDX,	"half-duplex" },				\	{ IFM_FLAG0,	"flag0" },					\	{ IFM_FLAG1,	"flag1" },					\	{ IFM_FLAG2,	"flag2" },					\	{ IFM_LOOP,	"hw-loopback" },				\	{ 0, NULL },							\}#endif	/* _NET_IF_MEDIA_H_ */

⌨️ 快捷键说明

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