wlan_bssdef.h revision 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef
12865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#ifndef __WLAN_BSSDEF_H__ 22865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define __WLAN_BSSDEF_H__ 32865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 42865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define MAX_IE_SZ 768 52865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 62865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_LENGTH_SSID 32 72865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_LENGTH_RATES 8 82865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_LENGTH_RATES_EX 16 92865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 102865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* Set of 8 data rates*/ 112865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingertypedef unsigned char NDIS_802_11_RATES[NDIS_802_11_LENGTH_RATES]; 122865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* Set of 16 data rates */ 132865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingertypedef unsigned char NDIS_802_11_RATES_EX[NDIS_802_11_LENGTH_RATES_EX]; 142865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 152865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct ndis_802_11_ssid { 162865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 SsidLength; 172865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 Ssid[32]; 182865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 192865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 202865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum NDIS_802_11_NETWORK_TYPE { 212865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11FH, 222865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11DS, 232865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11OFDM5, 242865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11OFDM24, 252865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11NetworkTypeMax /* not a real type, defined as an upper bound */ 262865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 272865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 282865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_CONFIGURATION_FH { 292865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; /* Length of structure */ 302865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 HopPattern; /* As defined by 802.11, MSB set */ 312865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 HopSet; /* to one if non-802.11 */ 322865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 DwellTime; /* units are Kusec */ 332865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 342865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 352865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* 362865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger FW will only save the channel number in DSConfig. 372865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger ODI Handler will convert the channel number to freq. number. 382865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger*/ 392865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_CONFIGURATION { 402865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; /* Length of structure */ 412865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 BeaconPeriod; /* units are Kusec */ 422865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 ATIMWindow; /* units are Kusec */ 432865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 DSConfig; /* Frequency, units are kHz */ 442865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct NDIS_802_11_CONFIGURATION_FH FHConfig; 452865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 462865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 472865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum NDIS_802_11_NETWORK_INFRASTRUCTURE { 482865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11IBSS, 492865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Infrastructure, 502865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AutoUnknown, 512865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11InfrastructureMax, /* Not a real value, defined as upper bound */ 522865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11APMode 532865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 542865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 552865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_FIXED_IEs { 562865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 Timestamp[8]; 572865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 BeaconInterval; 582865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 Capabilities; 592865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 602865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 612865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* 622865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * Length is the 4 bytes multiples of the sume of 632865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * 6 * sizeof (unsigned char) + 2 + sizeof (ndis_802_11_ssid) + sizeof (u32) 642865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * + sizeof (s32) + sizeof (NDIS_802_11_NETWORK_TYPE) 652865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * + sizeof (struct NDIS_802_11_CONFIGURATION) 662865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * + sizeof (NDIS_802_11_RATES_EX) + IELength 672865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 682865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * Except the IELength, all other fields are fixed length. Therefore, we can 692865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * define a macro to present the partial sum. 702865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger */ 712865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 722865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct ndis_wlan_bssid_ex { 732865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; 742865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned char MacAddress[6]; 752865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 Reserved[2]; 762865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct ndis_802_11_ssid Ssid; 772865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Privacy; 782865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger s32 Rssi; 792865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger enum NDIS_802_11_NETWORK_TYPE NetworkTypeInUse; 802865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct NDIS_802_11_CONFIGURATION Configuration; 812865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger enum NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode; 822865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger NDIS_802_11_RATES_EX SupportedRates; 832865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 IELength; 842865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/*(timestamp, beacon interval, and capability information) */ 852865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 IEs[MAX_IE_SZ]; 862865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 872865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 882865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum NDIS_802_11_AUTHENTICATION_MODE { 892865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeOpen, 902865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeShared, 912865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeAutoSwitch, 922865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeWPA, 932865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeWPAPSK, 942865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeWPANone, 952865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11AuthModeMax /* Not a real mode, defined as upper bound */ 962865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 972865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 982865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum { 992865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11WEPEnabled, 1002865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption1Enabled = Ndis802_11WEPEnabled, 1012865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11WEPDisabled, 1022865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11EncryptionDisabled = Ndis802_11WEPDisabled, 1032865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11WEPKeyAbsent, 1042865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption1KeyAbsent = Ndis802_11WEPKeyAbsent, 1052865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11WEPNotSupported, 1062865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11EncryptionNotSupported = Ndis802_11WEPNotSupported, 1072865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption2Enabled, 1082865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption2KeyAbsent, 1092865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption3Enabled, 1102865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger Ndis802_11Encryption3KeyAbsent 1112865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1122865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1132865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_REQFI_CAPABILITIES 1 1142865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_REQFI_LISTENINTERVAL 2 1152865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_REQFI_CURRENTAPADDRESS 4 1162865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1172865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_RESFI_CAPABILITIES 1 1182865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_RESFI_STATUSCODE 2 1192865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AI_RESFI_ASSOCIATIONID 4 1202865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1212865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_AI_REQFI { 1222865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 Capabilities; 1232865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 ListenInterval; 1242865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned char CurrentAPAddress[6]; 1252865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1262865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1272865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_AI_RESFI { 1282865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 Capabilities; 1292865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 StatusCode; 1302865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 AssociationId; 1312865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1322865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1332865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_ASSOCIATION_INFORMATION { 1342865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; 1352865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 AvailableRequestFixedIEs; 1362865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct NDIS_802_11_AI_REQFI RequestFixedIEs; 1372865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 RequestIELength; 1382865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 OffsetRequestIEs; 1392865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u16 AvailableResponseFixedIEs; 1402865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct NDIS_802_11_AI_RESFI ResponseFixedIEs; 1412865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 ResponseIELength; 1422865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 OffsetResponseIEs; 1432865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1442865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1452865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* Key mapping keys require a BSSID*/ 1462865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_KEY { 1472865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; /* Length of this structure */ 1482865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 KeyIndex; 1492865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 KeyLength; /* length of key in bytes */ 1502865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned char BSSID[6]; 1512865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned long long KeyRSC; 1522865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 KeyMaterial[32]; /* variable length */ 1532865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1542865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1552865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_REMOVE_KEY { 1562865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; /* Length of this structure */ 1572865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 KeyIndex; 1582865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned char BSSID[6]; 1592865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1602865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1612865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct NDIS_802_11_WEP { 1622865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; /* Length of this structure */ 1632865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 KeyIndex; /* 0 is the per-client key, 1642865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * 1-N are the global keys */ 1652865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 KeyLength; /* length of key in bytes */ 1662865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 KeyMaterial[16];/* variable length depending on above field */ 1672865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1682865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1692865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* mask for authentication/integrity fields */ 1702865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AUTH_REQUEST_AUTH_FIELDS 0x0f 1712865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AUTH_REQUEST_REAUTH 0x01 1722865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE 0x02 1732865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR 0x06 1742865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR 0x0E 1752865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1762865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* MIC check time, 60 seconds. */ 1772865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define MIC_CHECK_TIME 60000000 1782865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1792865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#ifndef Ndis802_11APMode 1802865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define Ndis802_11APMode (Ndis802_11InfrastructureMax+1) 1812865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#endif 1822865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1832865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct wlan_network { 1842865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct list_head list; 1852865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger int network_type; /*refer to ieee80211.h for WIRELESS_11A/B/G */ 1862865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger int fixed; /* set to fixed when not to be removed asi 1872865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * site-surveying */ 1882865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned int last_scanned; /*timestamp for the network */ 1892865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger int aid; /*will only be valid when a BSS is joined. */ 1902865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger int join_res; 1912865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct ndis_wlan_bssid_ex network; /*must be the last item */ 1922865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1932865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 1942865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum VRTL_CARRIER_SENSE { 1952865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger DISABLE_VCS, 1962865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger ENABLE_VCS, 1972865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger AUTO_VCS 1982865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 1992865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2002865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum VCS_TYPE { 2012865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger NONE_VCS, 2022865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger RTS_CTS, 2032865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger CTS_TO_SELF 2042865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 2052865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2062865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define PWR_CAM 0 2072865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define PWR_MINPS 1 2082865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define PWR_MAXPS 2 2092865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define PWR_UAPSD 3 2102865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define PWR_VOIP 4 2112865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2122865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerenum UAPSD_MAX_SP { 2132865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger NO_LIMIT, 2142865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger TWO_MSDU, 2152865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger FOUR_MSDU, 2162865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger SIX_MSDU 2172865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 2182865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2192865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NUM_PRE_AUTH_KEY 16 2202865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#define NUM_PMKID_CACHE NUM_PRE_AUTH_KEY 2212865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2222865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger/* 2232865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * WPA2 2242865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger */ 2252865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Fingerstruct wlan_bssid_ex { 2262865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Length; 2272865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger unsigned char MacAddress[6]; 2282865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 Reserved[2]; 2292865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct ndis_802_11_ssid Ssid; 2302865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 Privacy; 2312865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger s32 Rssi; 2322865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger enum NDIS_802_11_NETWORK_TYPE NetworkTypeInUse; 2332865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger struct NDIS_802_11_CONFIGURATION Configuration; 2342865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger enum NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode; 2352865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger NDIS_802_11_RATES_EX SupportedRates; 2362865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u32 IELength; 2372865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger u8 IEs[MAX_IE_SZ]; /* (timestamp, beacon interval, and capability 2382865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger * information) */ 2392865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger}; 2402865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 2412865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger#endif /* #ifndef WLAN_BSSDEF_H_ */ 2422865d42c78a9121caad52cb02d1fbb7f5cdbc4efLarry Finger 243