4edca552a83e9cd63bda361935b40acdd213921b
[reactos.git] / reactos / include / psdk / ntddndis.h
1 #ifndef _NTDDNDIS_
2 #define _NTDDNDIS_
3
4 /* Defines */
5 #define NDIS_802_11_LENGTH_SSID 32
6 #define NDIS_802_11_LENGTH_RATES 8
7
8 #define OID_802_11_BSSID_LIST 0x0D010217
9 #define OID_802_11_BSSID_LIST_SCAN 0x0D01011A
10
11 /* Enumerations */
12 typedef enum _NDIS_802_11_NETWORK_INFRASTRUCTURE
13 {
14 Ndis802_11IBSS,
15 Ndis802_11Infrastructure,
16 Ndis802_11AutoUnknown,
17 Ndis802_11InfrastructureMax
18 } NDIS_802_11_NETWORK_INFRASTRUCTURE, *PNDIS_802_11_NETWORK_INFRASTRUCTURE;
19
20 typedef enum _NDIS_802_11_NETWORK_TYPE
21 {
22 Ndis802_11FH,
23 Ndis802_11DS,
24 Ndis802_11OFDM5,
25 Ndis802_11OFDM24,
26 Ndis802_11Automode,
27 Ndis802_11NetworkTypeMax
28 } NDIS_802_11_NETWORK_TYPE, *PNDIS_802_11_NETWORK_TYPE;
29
30 /* Typedefs */
31 typedef struct _NDIS_OBJECT_HEADER
32 {
33 UCHAR Type;
34 UCHAR Revision;
35 USHORT Size;
36 } NDIS_OBJECT_HEADER, *PNDIS_OBJECT_HEADER;
37
38 typedef UCHAR NDIS_802_11_MAC_ADDRESS[6];
39 typedef LONG NDIS_802_11_RSSI;
40 typedef UCHAR NDIS_802_11_RATES[NDIS_802_11_LENGTH_RATES];
41
42 typedef struct _NDIS_802_11_SSID
43 {
44 ULONG SsidLength;
45 UCHAR Ssid[NDIS_802_11_LENGTH_SSID];
46 } NDIS_802_11_SSID, *PNDIS_802_11_SSID;
47
48 typedef struct _NDIS_802_11_CONFIGURATION_FH
49 {
50 ULONG Length;
51 ULONG HopPattern;
52 ULONG HopSet;
53 ULONG DwellTime;
54 } NDIS_802_11_CONFIGURATION_FH, *PNDIS_802_11_CONFIGURATION_FH;
55
56 typedef struct _NDIS_802_11_CONFIGURATION
57 {
58 ULONG Length;
59 ULONG BeaconPeriod;
60 ULONG ATIMWindow;
61 ULONG DSConfig;
62 NDIS_802_11_CONFIGURATION_FH FHConfig;
63 } NDIS_802_11_CONFIGURATION, *PNDIS_802_11_CONFIGURATION;
64
65 typedef struct _NDIS_WLAN_BSSID
66 {
67 ULONG Length;
68 NDIS_802_11_MAC_ADDRESS MacAddress;
69 UCHAR Reserved[2];
70 NDIS_802_11_SSID Ssid;
71 ULONG Privacy;
72 NDIS_802_11_RSSI Rssi;
73 NDIS_802_11_NETWORK_TYPE NetworkTypeInUse;
74 NDIS_802_11_CONFIGURATION Configuration;
75 NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode;
76 NDIS_802_11_RATES SupportedRates;
77 } NDIS_WLAN_BSSID, *PNDIS_WLAN_BSSID;
78
79 typedef struct _NDIS_802_11_BSSID_LIST
80 {
81 ULONG NumberOfItems;
82 NDIS_WLAN_BSSID Bssid[1];
83 } NDIS_802_11_BSSID_LIST, *PNDIS_802_11_BSSID_LIST;
84
85 #endif