1981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
2981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * osDot11.h
3981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved.
5981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All rights reserved.
6981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
7981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Redistribution and use in source and binary forms, with or without
8981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * modification, are permitted provided that the following conditions
9981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * are met:
10981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
11981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Redistributions of source code must retain the above copyright
12981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    notice, this list of conditions and the following disclaimer.
13981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Redistributions in binary form must reproduce the above copyright
14981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    notice, this list of conditions and the following disclaimer in
15981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    the documentation and/or other materials provided with the
16981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    distribution.
17981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Neither the name Texas Instruments nor the names of its
18981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    contributors may be used to endorse or promote products derived
19981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    from this software without specific prior written permission.
20981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
21981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
33981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
34981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
35981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*--------------------------------------------------------------------------*/
36981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Module:		osDot11.h */
37981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
38981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Purpose:		*/
39981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
40981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*--------------------------------------------------------------------------*/
41981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef __OSDOT11_H__
42981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define __OSDOT11_H__
43981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
44981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "tidef.h"
45981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "tiQosTypes.h"
46981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
47981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
48981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define	OS_STATUS_MEDIA_SPECIFIC_INDICATION	((NDIS_STATUS)0x40010012L)
49981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
50981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_REQUEST_REAUTH					0x01
51981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_REQUEST_KEYUPDATE					0x02
52981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_REQUEST_PAIRWISE_ERROR			0x06
53981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_REQUEST_GROUP_ERROR				0x0E
54981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
55981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_SSID_FIRST_VALID_CHAR             32
56981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
57981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_SSID_JUNK(str,len)                   \
58981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        ((len) > 2 &&                                  \
59b0f27977402244a1b44d5d8bd06bacb5ee258bdfChung-yih Wang         (unsigned char)(str)[0] < OS_802_11_SSID_FIRST_VALID_CHAR && \
60b0f27977402244a1b44d5d8bd06bacb5ee258bdfChung-yih Wang         (unsigned char)(str)[1] < OS_802_11_SSID_FIRST_VALID_CHAR && \
61b0f27977402244a1b44d5d8bd06bacb5ee258bdfChung-yih Wang         (unsigned char)(str)[2] < OS_802_11_SSID_FIRST_VALID_CHAR)
62981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
63981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
64981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
65981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Per-packet information for Ieee8021QInfo.*/
66981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
67981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_PACKET_8021Q_INFO
68981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
69981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    union
70981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    {
71981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        struct
72981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        {
73981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt            TI_UINT32      UserPriority:3;         /* 802.1p priority */
74981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt            TI_UINT32      CanonicalFormatId:1;    /* always 0*/
75981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt            TI_UINT32      VlanId:12;              /* VLAN Identification*/
76981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt            TI_UINT32      Reserved:16;            /* set to 0*/
77981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        }   TagHeader;
78981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
79981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        void*  Value;
80981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    }u;
81981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_PACKET_8021Q_INFO, *POS_PACKET_8021Q_INFO;
82981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
83981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
84981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT64 OS_802_11_KEY_RSC;
85981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
86981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_SSID
87981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
88981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 SsidLength;
89981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8  Ssid[32];
90981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_SSID, *POS_802_11_SSID;
91981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
92981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_NETWORK_TYPE
93981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
94981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11FH,
95981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11DS,
96981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11OFDM5,
97981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11OFDM24,
98981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Automode,
99981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11NetworkTypeMax
100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_NETWORK_TYPE;
101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_NETWORK_TYPE_LIST
103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32                  NumberOfItems;
105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_NETWORK_TYPE NetworkType [1];
106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_NETWORK_TYPE_LIST, *POS_802_11_NETWORK_TYPE_LIST;
107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_POWER_MODE
109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*Continuous access mode (CAM). */
111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*When the power mode is set to CAM, the device is always on. */
112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PowerModeCAM,
113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*Specifies maximum (MAX) power saving. A power mode of MAX */
115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*results in the greatest power savings for the 802.11 NIC radio. */
116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PowerModeMAX_PSP,
117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*Specifies fast power-saving mode. This power mode provides */
119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  /*the best combination of network performance and power usage. */
120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PowerModeFast_PSP,
121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PowerModeMax
122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_POWER_MODE;
123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*specified in milliwatts (mW).*/
125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT32 OS_802_11_TX_POWER_LEVEL;
126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Normal value from -10 and -200*/
127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_INT32 OS_802_11_RSSI;
128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Length */
130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the length of the OS_802_11_CONFIGURATION_FH structure in bytes. */
132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*HopPattern*/
133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the hop pattern used to determine the hop sequence. */
134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  As defined by the 802.11 standard, the layer management entity (LME) of */
135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  the physical layer uses a hop pattern to determine the hop sequence. */
136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*HopSet*/
137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies a set of patterns. The LME of the physical layer uses these */
138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  patterns to determine the hop sequence. */
139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*DwellTime*/
140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the maximum period of time during which the transmitter */
141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  should remain fixed on a channel. This interval is described in Kµsec (1024 µsec). */
142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_CONFIGURATION_FH
143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32  Length;
145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32  HopPattern;
146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32  HopSet;
147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32  DwellTime;
148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_CONFIGURATION_FH, *POS_802_11_CONFIGURATION_FH;
149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Length */
151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the length of the NDIS_802_11_CONFIGURATION structure in bytes. */
153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*BeaconPeriod */
154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the interval between beacon message transmissions. */
155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  This value is specified in Kµsec (1024 µsec). */
156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*ATIMWindow */
157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the announcement traffic information message (ATIM) window in */
158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Kµsec (1024 µsec). The ATIM window is a short time period immediately */
159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  after the transmission of each beacon in an IBSS configuration. */
160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  During the ATIM window, any station can indicate the need to transfer data */
161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  to another station during the following data-transmission window. */
162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*DSConfig */
163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the frequency of the selected channel in kHz. */
164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*FHConfig */
165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the frequency hopping configuration in an OS_802_11_CONFIGURATION_FH structure. */
166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_CONFIGURATION
167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 Length;
169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 BeaconPeriod;
170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 ATIMWindow;
171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  union
172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  {
173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        TI_UINT32 DSConfig;
174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt        TI_UINT32 channel;
175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  } Union;
176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_CONFIGURATION_FH FHConfig;
177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_CONFIGURATION, *POS_802_11_CONFIGURATION;
178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Ndis802_11IBSS */
180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the independent basic service set (IBSS) mode. */
181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  This mode is also known as ad hoc mode. */
182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Ndis802_11Infrastructure */
183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the infrastructure mode. */
184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Ndis802_11AutoUnknown */
185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies an automatic mode. In this mode, the 802.11 NIC can switch */
186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  between ad hoc and infrastructure modes as required. */
187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Ndis802_11HighSpeedIBSS*/
188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies proprietary ad hoc mode that works only PBCC.*/
189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_NETWORK_MODE
190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11IBSS,
192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Infrastructure,
193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11AutoUnknown,
194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11HighSpeedIBSS,
195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11InfrastructureMax
196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_NETWORK_MODE, OS_802_11_NETWORK_INFRASTRUCTURE,*POS_802_11_NETWORK_INFRASTRUCTURE;
197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*The rates array contains a set of eight octets. */
200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Each octet contains a desired data rate in units of .5 Mbps.*/
201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT8 OS_802_11_RATES[8];
203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT8 OS_802_11_RATES_EX[16];
205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_FIXED_IEs
207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8  TimeStamp[8];
209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 BeaconInterval;
210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 Capabilities;
211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_FIXED_IEs, *POS_802_11_FIXED_IEs;
212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_VARIABLE_IEs
214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8 ElementID;
216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8 Length;	/* Number of bytes in data field*/
217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8 data[1];
218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_VARIABLE_IEs, *POS_802_11_VARIABLE_IEs;
219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_BSSID
221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32 Length;
223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TMacAddr                  MacAddress;
224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT16					Capabilities;
225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_SSID            Ssid;
226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32                 Privacy;
227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_RSSI            Rssi;
228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_NETWORK_TYPE    NetworkTypeInUse;
229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_CONFIGURATION   Configuration;
230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_NETWORK_MODE    InfrastructureMode;
231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_RATES           SupportedRates;
232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_BSSID, *POS_802_11_BSSID;
233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_BSSID_LIST
235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32          NumberOfItems;
237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_BSSID  Bssid[1];
238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_BSSID_LIST, *POS_802_11_BSSID_LIST;
239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_BSSID_EX
242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32					Length;
244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TMacAddr		            MacAddress;
245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT16					Capabilities;
246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_SSID            Ssid;
247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32                 Privacy;
248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_RSSI            Rssi;
249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_NETWORK_TYPE    NetworkTypeInUse;
250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_CONFIGURATION   Configuration;
251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_NETWORK_MODE    InfrastructureMode;
252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_RATES_EX        SupportedRates;
253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32                 IELength;
254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT8                  IEs[1];
255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_BSSID_EX, *POS_802_11_BSSID_EX, OS_WLAN_BSSID_EX, *POS_WLAN_BSSID_EX;
256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_BSSID_LIST_EX
258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  TI_UINT32                 NumberOfItems;
260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  OS_802_11_BSSID_EX        Bssid[1];
261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_BSSID_LIST_EX, *POS_802_11_BSSID_LIST_EX;
262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT32 OS_802_11_FRAGMENTATION_THRESHOLD;
265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT32 OS_802_11_RTS_THRESHOLD;
266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT32 OS_802_11_ANTENNA;
267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*Length */
270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the length of the NDIS_802_11_WEP structure in bytes. */
271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*KeyIndex */
272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies which key to add or remove. The global keys are represented */
273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  by values of zero to n. When the most significant bit is set to 1, */
274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  it indicates the key used to transmit to the access point. */
275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*KeyLength */
276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies the length of the KeyMaterial character array in bytes. */
277981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*KeyMaterial */
278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies an arraythat identifies the WEP key. The length of this array is */
279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  variable and depends upon the value of the KeyLength member. */
280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT32 OS_802_11_KEY_INDEX;
282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_WEP
283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
284981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 Length;
285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 KeyIndex;
286981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 KeyLength;
287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8  KeyMaterial [32];
288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_WEP, *POS_802_11_WEP;
289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
290981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Key mapping keys require a BSSID*/
291981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*typedef tiUINT64 OS_802_11_KEY_RSC;*/
292981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
293981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_KEY
294981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                  Length;             /* Length of this structure*/
296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                  KeyIndex;
297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                  KeyLength;          /* length of key in bytes*/
298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                   BSSID;
299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_KEY_RSC          KeyRSC;
300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                   KeyMaterial[32];     /* variable length depending on above field*/
301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_KEY, *POS_802_11_KEY;
302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_REMOVE_KEY
304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                  Length;             /* Length of this structure*/
306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                  KeyIndex;
307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                   BSSID;
308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_REMOVE_KEY, *POS_802_11_REMOVE_KEY;
309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_REQFI_CAPABILITIES     1
311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_REQFI_LISTENINTERVAL   2
312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_REQFI_CURRENTAPADDRESS 4
313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_RESFI_CAPABILITIES     1
316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_RESFI_STATUSCODE       2
317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_AI_RESFI_ASSOCIATIONID    4
318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_AI_REQFI
320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 Capabilities;
322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 ListenInterval;
323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TMacAddr  CurrentAPAddress;
324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef _WINDOWS
325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16 reserved; /* added for packing */
326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_AI_REQFI;
328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_AI_RESFI
330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 Capabilities;
332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 StatusCode;
333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16 AssociationId;
334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef _WINDOWS
335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16 reserved; /* added for packing */
336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_AI_RESFI;
338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_ASSOCIATION_INFORMATION
340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 Length;
342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16 AvailableRequestFixedIEs;
343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_AI_REQFI RequestFixedIEs;
344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 RequestIELength;
345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 OffsetRequestIEs;
346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16 AvailableResponseFixedIEs;
347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_AI_RESFI ResponseFixedIEs;
348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 ResponseIELength;
349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 OffsetResponseIEs;
350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_ASSOCIATION_INFORMATION, *POS_802_11_ASSOCIATION_INFORMATION;
352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* supported EAP types*/
355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_EAP_TYPES
356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_EAP_TYPE_NONE                = -1,
358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_MD5_CHALLENGE		= 4,
359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_GENERIC_TOKEN_CARD	= 6,
360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_TLS					= 13,
361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_LEAP				= 17,
362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_TTLS				= 21,
363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_PEAP				= 25,
364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_EAP_TYPE_MS_CHAP_V2			= 26,
365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_EAP_TYPE_FAST                = 43
366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_EAP_TYPES;
367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* encryption type*/
369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_ENCRYPTION_TYPES
370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ENCRYPTION_TYPE_NONE = 0,
372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ENCRYPTION_TYPE_WEP,
373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ENCRYPTION_TYPE_TKIP,
374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ENCRYPTION_TYPE_AES
375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_ENCRYPTION_TYPES;
376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Key type*/
378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_KEY_TYPES
379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_KEY_TYPE_STATIC = 0,
381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_KEY_TYPE_DYNAMIC
382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_KEY_TYPES;
383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* ELP mode*/
385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_ELP_MODES
386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ELP_MODE_DISABLE,
388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ELP_MODE_SYNC,
389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_ELP_MODE_NON_SYNC
390981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_ELP_MODES;
391981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
392981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Roaming mode*/
393981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_ROAMING_MODES
394981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
395981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ROAMING_MODE_DISABLE,
396981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_ROAMING_MODE_ENABLE
397981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_ROAMING_MODES;
398981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
399981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_POWER_PROFILE
400981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
401981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_MODE_AUTO,
402981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_MODE_ACTIVE,
403981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_MODE_SHORT_DOZE,
404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_MODE_LONG_DOZE
405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_POWER_PROFILE;
406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_POWER_LEVELS
408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_LEVEL_ELP,
410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_LEVEL_PD,
411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_POWER_LEVEL_AWAKE
412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_POWER_LEVELS;
413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_BEACON_FILTER_MODE
416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_BEACON_FILTER_MODE_INACTIVE,
418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_BEACON_FILTER_MODE_ACTIVE
419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_BEACON_FILTER_MODE;
420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_SCAN_TYPES
423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_SCAN_TYPE_PASSIVE,
425981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_SCAN_TYPE_BROADCAST,
426981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_SCAN_TYPE_UNICAST
427981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_SCAN_TYPES;
428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_VOICE_DELIVERY_PROTOCOL
430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_VOICE_DELIVERY_PROTOCOL_DISABLED,
432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_VOICE_DELIVERY_PROTOCOL_PS_POLL
433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_VOICE_DELIVERY_PROTOCOL;
434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS
436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 uHighThreshold;
438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32 uLowThreshold;
439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 TestInterval;
440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS;
441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct{
443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32 uHighOrLowThresholdFlag;                /* high or low */
444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32 uAboveOrBelowFlag;       /* direction of crossing */
445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_CROSS_INDICATION_PARAMS;
446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT8   OS_802_11_PMKID_VALUE[16];
448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_BSSIDInfo
450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr   BSSID;
452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_PMKID_VALUE   PMKID;
453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_BSSIDInfo, *POS_BSSIDInfo;
454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_PMKID
456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32        Length;
458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32        BSSIDInfoCount;
459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_BSSIDInfo    osBSSIDInfo[1];
460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_PMKID, *POS_802_11_PMKID;
461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_WEP_STATUS
463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11WEPEnabled = 0,
465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption1Enabled = os802_11WEPEnabled,
466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11WEPDisabled,
467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11EncryptionDisabled = os802_11WEPDisabled,
468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11WEPKeyAbsent,
469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption1KeyAbsent = os802_11WEPKeyAbsent,
470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11WEPNotSupported,
471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11EncryptionNotSupported = os802_11WEPNotSupported,
472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption2Enabled,
473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption2KeyAbsent,
474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption3Enabled,
475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11Encryption3KeyAbsent
476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_WEP_STATUS, OS_802_11_ENCRYPTION_STATUS;
477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*os802_11AuthModeOpen */
479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies 802.11 open authentication mode. There are no checks when accepting */
480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  clients in this mode. */
481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*os802_11AuthModeShared */
482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies 802.11 shared authentication that uses a pre-shared wired equivalent */
483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  privacy (WEP) key. */
484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*os802_11AuthModeAutoSwitch */
485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies auto-switch mode. When using auto-switch mode, the NIC tries 802.11 shared */
486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  authentication mode first. If shared mode fails, the NIC attempts to use 802.11 open */
487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  authentication mode. */
488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_AUTHENTICATION_MODE
490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeOpen,
492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeShared,
493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeAutoSwitch,
494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeWPA,
495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeWPAPSK,
496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeWPANone,
497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeWPA2,
498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeWPA2PSK,
499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11AuthModeMax
500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_AUTHENTICATION_MODE;
501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*os802_11PrivFilterAcceptAll */
504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies an open mode. In this mode, the NIC accepts any packet if the packet */
505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  is not encrypted or if the NIC successfully decrypts it. */
506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*os802_11PrivFilter8021xWEP */
507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  Specifies a filtering mode. In the 802.1X filtering mode, 802.1X packets are */
508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  accepted even if they are not encrypted. However, the NIC accepts nothing else */
509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  unless it is encrypted using WEP. */
510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_PRIVACY_FILTER
511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PrivFilterAcceptAll,
513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11PrivFilter8021xWEP
514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_PRIVACY_FILTER;
515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_RELOAD_DEFAULTS
517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11ReloadWEPKeys
519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_RELOAD_DEFAULTS, *POS_802_11_RELOAD_DEFAULTS;
520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_STATUS_TYPE
522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11StatusType_Authentication,
524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11StatusType_PMKID_CandidateList = 2,
525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    os802_11StatusTypeMax       /* not a real type, defined as an upper bound */
526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_STATUS_TYPE, *POS_802_11_STATUS_TYPE;
527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_STATUS_INDICATION
529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_STATUS_TYPE StatusType;
531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_STATUS_INDICATION, *POS_802_11_STATUS_INDICATION;
532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
534981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_AUTHENTICATION_REQUEST
535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32           	Length;             /* Length of this structure*/
537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr 	            BSSID;
538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32				Flags;
539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_AUTHENTICATION_REQUEST, *POS_802_11_AUTHENTICATION_REQUEST;
540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_UNSPECIFIED      		=   0,
544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_AUTH_REJECT				=   1,
545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_ASSOC_REJECT				=   2,
546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_SECURITY_FAILURE 		=   3,
547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_AP_DEAUTHENTICATE		=   4,
548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_AP_DISASSOCIATE			=   5,
549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_DISASSOC_STATUS_ROAMING_TRIGGER			=   6
550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}	OS_802_11_DISASSOCIATE_REASON_E;
552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	OS_802_11_DISASSOCIATE_REASON_E  eDisAssocType;
556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32						 uStatusCode;
557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_DISASSOCIATE_REASON_T;
558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLE   0x01
562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_PMKID_CANDIDATE
564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr               BSSID;
566981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32              Flags;
567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_PMKID_CANDIDATE, *POS_802_11_PMKID_CANDIDATE;
568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_PMKID_CANDIDATELIST
570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                   Version;       /* Version of the structure*/
572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                   NumCandidates; /* No. of pmkid candidates*/
573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_PMKID_CANDIDATE  CandidateList[1];
574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_PMKID_CANDIDATELIST, *POS_802_11_PMKID_CANDIDATELIST;
575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TI_UINT8 OS_802_11_MAC_PMKID_VALUE[16];
578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_BSSIDInfo
580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr 	               BSSID;
582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_MAC_PMKID_VALUE  PMKID;
583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  OS_802_11_BSSIDInfo, *POS_802_11_BSSIDInfo;
584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_AUTH_ENCRYPTION
587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_AUTHENTICATION_MODE AuthModeSupported;
589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_ENCRYPTION_STATUS   EncryptionStatusSupported;
590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_AUTH_ENCRYPTION, *POS_802_11_AUTH_ENCRYPTION;
591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _OS_802_11_CAPABILITY
594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 Length;
596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 Version;
597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 NoOfPmKIDs;
598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32 NoOfAuthEncryptPairsSupported;
599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    OS_802_11_AUTH_ENCRYPTION AuthEncryptionSupported[1];
600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_CAPABILITY, *POS_802_11_CAPABILITY;
602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_CAPABILITY_VERSION 2
604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum _OS_802_11_REG_DOMAIN
608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_FCC = 0x10,
610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_IC = 0x20,
611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_ETSI = 0x30,
612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_Spain = 0x31,
613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_France = 0x32,
614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_MKK = 0x40,
615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_MKK1 = 0x41,
616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_US	= 0x50,
617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_WB	= 0x51,
618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  os802_11_Domain_EXWB	= 0x52
619981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} OS_802_11_REG_DOMAIN;
620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
622981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_TI_VERSION							0xFF080001
624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* propritary OIDs used by FUNK supplicant for WPA Mixed mode support*/
627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* WPA2 MIxed mode OIDs */
628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define CGUID_FSW_802_11_AVAILABLE_OPTIONS      {0x1a905534, 0xe71f, 0x46d1, {0xa2, 0xcb, 0xa5, 0x57, 0x01, 0x76, 0x38, 0xfd}}
629981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define CGUID_FSW_802_11_OPTIONS 				{0xdc7a51b7, 0x2236, 0x467d, {0xb1, 0x55, 0x03, 0x50, 0x42, 0x04, 0xcf, 0x30}}
630981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
631981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_FSW_802_11_AVAILABLE_OPTIONS        0xFF010237
632981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_FSW_802_11_OPTIONS                  0xFF010238
633981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
634981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
635981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
636981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
637981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* IEEE 802.11 OIDs*/
638981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**/
639981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_BSSID                        0x0D010101
640981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_SSID                         0x0D010102
641981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_INFRASTRUCTURE_MODE          0x0D010108
642981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_ADD_WEP                      0x0D010113
643981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_REMOVE_WEP                   0x0D010114
644981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_DISASSOCIATE                 0x0D010115
645981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_AUTHENTICATION_MODE          0x0D010118
646981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_PRIVACY_FILTER               0x0D010119
647981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_BSSID_LIST_SCAN              0x0D01011A
648981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_WEP_STATUS                   0x0D01011B
649981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_RELOAD_DEFAULTS              0x0D01011C
650981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_ADD_KEY                      0x0D01011D
651981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_REMOVE_KEY                   0x0D01011E
652981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_ASSOCIATION_INFORMATION      0x0D01011F
653981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_NETWORK_TYPES_SUPPORTED      0x0D010203
654981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_NETWORK_TYPE_IN_USE          0x0D010204
655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_TX_POWER_LEVEL               0x0D010205
656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_RSSI                         0x0D010206
657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_RSSI_TRIGGER                 0x0D010207
658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_FRAGMENTATION_THRESHOLD      0x0D010209
659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_RTS_THRESHOLD                0x0D01020A
660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_NUMBER_OF_ANTENNAS           0x0D01020B
661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_RX_ANTENNA_SELECTED          0x0D01020C
662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_TX_ANTENNA_SELECTED          0x0D01020D
663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_SUPPORTED_RATES              0x0D01020E
664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_DESIRED_RATES                0x0D010210
665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_CONFIGURATION                0x0D010211
666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_STATISTICS                   0x0D020212
667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_POWER_MODE                   0x0D010216
668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OID_802_11_BSSID_LIST                   0x0D010217
669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
670981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
671981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef _USER_MODE
672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	#include "osdot11nousermode.h"
673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
674981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
675981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
676981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
677981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
678981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* AnyWPA mode flags used in propritary FUNK suplicant OIDs*/
679981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
680981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define     OS_802_11_OPTION_ENABLE_PROMOTE_MODE        0x00000001 /*bit 0*/
681981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define     OS_802_11_OPTION_ENABLE_PROMOTE_CIPHER      0x00000002 /*bit 1*/
682981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define		OS_802_11_OPTION_DISABLE_PROMOTE_MODE		0
683981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define     OS_802_11_OPTION_ENABLE_ALL                 0x00000003
684981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
685981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
686