xref: /reactos/sdk/include/psdk/windot11.h (revision c2082ce9)
1 #ifndef __WINDOT11_H__
2 #define __WINDOT11_H__
3 
4 #ifndef _NTDDNDIS_
5 #include <ntddndis.h>
6 #endif
7 #include <wlantypes.h>
8 
9 /* Enumerations */
10 
11 #if defined(__midl) || defined(__WIDL__)
12 typedef [v1_enum] enum _DOT11_PHY_TYPE {
13 #else
14 typedef enum _DOT11_PHY_TYPE {
15 #endif
16     dot11_phy_type_unknown,
17     dot11_phy_type_any,
18     dot11_phy_type_fhss,
19     dot11_phy_type_dsss,
20     dot11_phy_type_irbaseband,
21     dot11_phy_type_ofdm,
22     dot11_phy_type_hrdsss,
23     dot11_phy_type_erp,
24     dot11_phy_type_ht,
25     dot11_phy_type_IHV_start,
26     dot11_phy_type_IHV_end
27 } DOT11_PHY_TYPE;
28 
29 typedef enum _DOT11_AUTH_ALGORITHM {
30     DOT11_AUTH_ALGO_80211_OPEN         = 1,
31     DOT11_AUTH_ALGO_80211_SHARED_KEY,
32     DOT11_AUTH_ALGO_WPA,
33     DOT11_AUTH_ALGO_WPA_PSK,
34     DOT11_AUTH_ALGO_WPA_NONE,
35     DOT11_AUTH_ALGO_RSNA,
36     DOT11_AUTH_ALGO_RSNA_PSK,
37     DOT11_AUTH_ALGO_IHV_START          = 0x80000000,
38     DOT11_AUTH_ALGO_IHV_END            = 0xffffffff
39 } DOT11_AUTH_ALGORITHM;
40 
41 typedef enum _DOT11_CIPHER_ALGORITHM {
42     DOT11_CIPHER_ALGO_NONE            = 0x00,
43     DOT11_CIPHER_ALGO_WEP40           = 0x01,
44     DOT11_CIPHER_ALGO_TKIP            = 0x02,
45     DOT11_CIPHER_ALGO_CCMP            = 0x04,
46     DOT11_CIPHER_ALGO_WEP104          = 0x05,
47     DOT11_CIPHER_ALGO_WPA_USE_GROUP   = 0x100,
48     DOT11_CIPHER_ALGO_RSN_USE_GROUP   = 0x100,
49     DOT11_CIPHER_ALGO_WEP             = 0x101,
50     DOT11_CIPHER_ALGO_IHV_START       = 0x80000000,
51     DOT11_CIPHER_ALGO_IHV_END         = 0xffffffff
52 } DOT11_CIPHER_ALGORITHM;
53 
54 /* Types */
55 
56 #if defined(__midl) || defined(__WIDL__)
57 typedef struct _DOT11_MAC_ADDRESS {
58     UCHAR ucDot11MacAddress[6];
59 } DOT11_MAC_ADDRESS, *PDOT11_MAC_ADDRESS;
60 #else
61 typedef UCHAR DOT11_MAC_ADDRESS[6];
62 typedef DOT11_MAC_ADDRESS* PDOT11_MAC_ADDRESS;
63 #endif
64 
65 typedef struct _DOT11_SSID {
66     ULONG uSSIDLength;
67     UCHAR ucSSID[DOT11_SSID_MAX_LENGTH];
68 } DOT11_SSID, *PDOT11_SSID;
69 
70 typedef struct _DOT11_BSSID_LIST {
71     NDIS_OBJECT_HEADER Header;
72     ULONG uNumOfEntries;
73     ULONG uTotalNumOfEntries;
74 #if defined(__midl) || defined(__WIDL__)
75     [size_is(uTotalNumOfEntries)] DOT11_MAC_ADDRESS BSSIDs[*];
76 #else
77     DOT11_MAC_ADDRESS BSSIDs[1];
78 #endif
79 } DOT11_BSSID_LIST, *PDOT11_BSSID_LIST;
80 
81 
82 #endif
83 
84