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

📄 p80211types.h

📁 uClinux2.6上兼容PRISM2.0芯片组的USB设备驱动程序.
💻 H
📖 第 1 页 / 共 2 页
字号:
					P80211DID_LSB_ISTABLE )#define P80211DID_MKID(s,g,i,n,t,a)	(P80211DID_MKSECTION(s) | \						P80211DID_MKGROUP(g) | \				 		P80211DID_MKITEM(i) | \				 		P80211DID_MKINDEX(n) | \						P80211DID_MKISTABLE(t) | \						(a) )#define P80211DID_GET(a,m,l)	((((UINT32)(a)) >> (l)) & (m))#define P80211DID_SECTION(a)	P80211DID_GET(a, \					P80211DID_MASK_SECTION, \					P80211DID_LSB_SECTION)#define P80211DID_GROUP(a)	P80211DID_GET(a, \					P80211DID_MASK_GROUP, \					P80211DID_LSB_GROUP)#define P80211DID_ITEM(a)	P80211DID_GET(a, \					P80211DID_MASK_ITEM, \					P80211DID_LSB_ITEM)#define P80211DID_INDEX(a)	P80211DID_GET(a, \					P80211DID_MASK_INDEX, \					P80211DID_LSB_INDEX)#define P80211DID_ISTABLE(a)	P80211DID_GET(a, \					P80211DID_MASK_ISTABLE, \					P80211DID_LSB_ISTABLE)#define P80211DID_ACCESS(a)	P80211DID_GET(a, \					P80211DID_MASK_ACCESS, \					P80211DID_LSB_ACCESS)/*================================================================*//* Types *//*----------------------------------------------------------------*//* The following structure types are used for the represenation *//*  of ENUMINT type metadata. */typedef struct p80211enumpair{	UINT32			val;	char			*name;} p80211enumpair_t;typedef struct p80211enum{	INT			nitems;	p80211enumpair_t	*list;} p80211enum_t;/*----------------------------------------------------------------*//* The following structure types are used to store data items in *//*  messages. *//* Template pascal string */typedef struct p80211pstr{	UINT8		len								__WLAN_ATTRIB_PACK__;			} __WLAN_ATTRIB_PACK__ p80211pstr_t;typedef struct p80211pstrd{	UINT8		len			__WLAN_ATTRIB_PACK__;				UINT8		data[0]			__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211pstrd_t;/* Maximum pascal string */typedef struct p80211pstr255{	UINT8		len			__WLAN_ATTRIB_PACK__;	UINT8		data[MAXLEN_PSTR255]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211pstr255_t;/* pascal string for macaddress and bssid */typedef struct p80211pstr6{	UINT8		len			__WLAN_ATTRIB_PACK__;	UINT8		data[MAXLEN_PSTR6]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211pstr6_t;/* pascal string for channel list */typedef struct p80211pstr14{	UINT8		len			__WLAN_ATTRIB_PACK__;	UINT8		data[MAXLEN_PSTR14]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211pstr14_t;/* pascal string for ssid */typedef struct p80211pstr32{	UINT8		len			__WLAN_ATTRIB_PACK__;	UINT8		data[MAXLEN_PSTR32]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211pstr32_t;/* MAC address array */typedef struct p80211macarray{	UINT32		cnt			__WLAN_ATTRIB_PACK__;	UINT8		data[1][MAXLEN_PSTR6]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211macarray_t;/* prototype template */typedef struct p80211item{	UINT32		did			__WLAN_ATTRIB_PACK__;	UINT16		status			__WLAN_ATTRIB_PACK__;	UINT16		len			__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_t;/* prototype template w/ data item */typedef struct p80211itemd{	UINT32		did			__WLAN_ATTRIB_PACK__;	UINT16		status			__WLAN_ATTRIB_PACK__;	UINT16		len			__WLAN_ATTRIB_PACK__;	UINT8		data[0]			__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211itemd_t;/* message data item for INT, BOUNDEDINT, ENUMINT */typedef struct p80211item_uint32{	UINT32		did			__WLAN_ATTRIB_PACK__;	UINT16		status			__WLAN_ATTRIB_PACK__;	UINT16		len			__WLAN_ATTRIB_PACK__;	UINT32		data			__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_uint32_t;/* message data item for OCTETSTR, DISPLAYSTR */typedef struct p80211item_pstr6{	UINT32		did			__WLAN_ATTRIB_PACK__;	UINT16		status			__WLAN_ATTRIB_PACK__;	UINT16		len			__WLAN_ATTRIB_PACK__;	p80211pstr6_t	data			__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_pstr6_t;/* message data item for OCTETSTR, DISPLAYSTR */typedef struct p80211item_pstr14{	UINT32			did		__WLAN_ATTRIB_PACK__;	UINT16			status		__WLAN_ATTRIB_PACK__;	UINT16			len		__WLAN_ATTRIB_PACK__;	p80211pstr14_t		data		__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_pstr14_t;/* message data item for OCTETSTR, DISPLAYSTR */typedef struct p80211item_pstr32{	UINT32			did		__WLAN_ATTRIB_PACK__;	UINT16			status		__WLAN_ATTRIB_PACK__;	UINT16			len		__WLAN_ATTRIB_PACK__;	p80211pstr32_t		data		__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_pstr32_t;/* message data item for OCTETSTR, DISPLAYSTR */typedef struct p80211item_pstr255{	UINT32			did		__WLAN_ATTRIB_PACK__;	UINT16			status		__WLAN_ATTRIB_PACK__;	UINT16			len		__WLAN_ATTRIB_PACK__;	p80211pstr255_t		data		__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_pstr255_t;/* message data item for UNK 392, namely mib items */typedef struct  p80211item_unk392{	UINT32		did				__WLAN_ATTRIB_PACK__;	UINT16		status				__WLAN_ATTRIB_PACK__;	UINT16		len				__WLAN_ATTRIB_PACK__;	UINT8		data[MAXLEN_MIBATTRIBUTE]	__WLAN_ATTRIB_PACK__;} __WLAN_ATTRIB_PACK__ p80211item_unk392_t;/* message data item for UNK 1025, namely p2 pdas */typedef struct  p80211item_unk1024{	UINT32		did				__WLAN_ATTRIB_PACK__;	UINT16		status				__WLAN_ATTRIB_PACK__;	UINT16		len				__WLAN_ATTRIB_PACK__;	UINT8		data[1024]			__WLAN_ATTRIB_PACK__;}  __WLAN_ATTRIB_PACK__ p80211item_unk1024_t;/* message data item for UNK 4096, namely p2 download chunks */typedef struct  p80211item_unk4096{	UINT32		did				__WLAN_ATTRIB_PACK__;	UINT16		status				__WLAN_ATTRIB_PACK__;	UINT16		len				__WLAN_ATTRIB_PACK__;	UINT8		data[4096]			__WLAN_ATTRIB_PACK__;}  __WLAN_ATTRIB_PACK__ p80211item_unk4096_t;struct catlistitem;/*----------------------------------------------------------------*//* The following structure type is used to represent all of the *//*  metadata items.  Some components may choose to use more, *//*  less or different metadata items. */typedef void (*p80211_totext_t)( struct catlistitem *, UINT32 did, UINT8* itembuf, char *textbuf);typedef void (*p80211_fromtext_t)( struct catlistitem *, UINT32 did, UINT8* itembuf, char *textbuf);typedef UINT32 (*p80211_valid_t)( struct catlistitem *, UINT32 did, UINT8* itembuf);/*================================================================*//* Extern Declarations *//*----------------------------------------------------------------*//* Enumeration Lists *//*  The following are the external declarations *//*  for all enumerations  */extern p80211enum_t MKENUMNAME(truth); extern p80211enum_t MKENUMNAME(ifstate); extern p80211enum_t MKENUMNAME(powermgmt);extern p80211enum_t MKENUMNAME(bsstype);extern p80211enum_t MKENUMNAME(authalg);extern p80211enum_t MKENUMNAME(phytype);extern p80211enum_t MKENUMNAME(temptype);extern p80211enum_t MKENUMNAME(regdomain);extern p80211enum_t MKENUMNAME(ccamode);extern p80211enum_t MKENUMNAME(diversity);extern p80211enum_t MKENUMNAME(scantype);extern p80211enum_t MKENUMNAME(resultcode);extern p80211enum_t MKENUMNAME(reason);extern p80211enum_t MKENUMNAME(status);extern p80211enum_t MKENUMNAME(msgcode);extern p80211enum_t MKENUMNAME(msgitem_status);extern p80211enum_t MKENUMNAME(lnxroam_reason);extern p80211enum_t MKENUMNAME(p2preamble); /*================================================================*//* Function Declarations *//*----------------------------------------------------------------*//* The following declare some utility functions for use with the *//*  p80211enum_t type. */UINT32 p80211enum_text2int(p80211enum_t *ep, char *text);UINT32 p80211enum_int2text(p80211enum_t *ep, UINT32 val, char *text);void p80211_error2text(int err_code, char *err_str);/*----------------------------------------------------------------*//* The following declare some utility functions for use with the *//*  p80211item_t and p80211meta_t types. *//*----------------------------------------------------------------*//* The following declare functions that perform validation and    *//* text to binary conversions based on the metadata for interface *//* and MIB data items.                                            *//*----------------------------------------------------------------*//*-- DISPLAYSTR ------------------------------------------------------*//* pstr ==> cstr */void p80211_totext_displaystr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* cstr ==> pstr */void p80211_fromtext_displaystr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of a displaystr binary value */UINT32 p80211_isvalid_displaystr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- OCTETSTR --------------------------------------------------------*//* pstr ==> "xx:xx:...." */void p80211_totext_octetstr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* "xx:xx:...." ==> pstr */void p80211_fromtext_octetstr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of an octetstr binary value */UINT32 p80211_isvalid_octetstr( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- INT -------------------------------------------------------------*//* UINT32 ==> %d */void p80211_totext_int( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* %d ==> UINT32 */void p80211_fromtext_int( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of an int's binary value (always successful) */UINT32 p80211_isvalid_int( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- ENUMINT ---------------------------------------------------------*//* UINT32 ==> <valuename> */void p80211_totext_enumint( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* <valuename> ==> UINT32 */void p80211_fromtext_enumint( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of an enum's binary value */UINT32 p80211_isvalid_enumint( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- INTARRAY --------------------------------------------------------*//* UINT32[] => %d,%d,%d,... */void p80211_totext_intarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* %d,%d,%d,... ==> UINT32[] */void p80211_fromtext_intarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of an integer array's value */UINT32 p80211_isvalid_intarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- BITARRAY --------------------------------------------------------*//* UINT32 ==> %d,%d,%d,... */void p80211_totext_bitarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* %d,%d,%d,... ==> UINT32 */void p80211_fromtext_bitarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of a bit array's value */UINT32 p80211_isvalid_bitarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- MACARRAY --------------------------------------------------------*/void p80211_totext_macarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );void p80211_fromtext_macarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of a MAC address array's value */UINT32 p80211_isvalid_macarray( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );/*-- MIBATTRIUBTE ------------------------------------------------------*//* <mibvalue> ==> <textual representation identified in MIB metadata> */void p80211_totext_getmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );void p80211_totext_setmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* <textual representation identified in MIB metadata> ==> <mibvalue> */void p80211_fromtext_getmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );void p80211_fromtext_setmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf, char *textbuf );/* function that checks validity of a mibitem's binary value */UINT32 p80211_isvalid_getmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );UINT32 p80211_isvalid_setmibattribute( struct catlistitem *metalist, UINT32 did, UINT8 *itembuf );#endif /* _P80211TYPES_H */

⌨️ 快捷键说明

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