2 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
44 /*--------------------- Export Definitions -------------------------*/
47 #define PROBE_DELAY 100 // (us)
48 #define SWITCH_CHANNEL_DELAY 200 // (us)
49 #define WLAN_SCAN_MINITIME 25 // (ms)
50 #define WLAN_SCAN_MAXTIME 100 // (ms)
51 #define TRIVIAL_SYNC_DIFFERENCE 0 // (us)
52 #define DEFAULT_IBSS_BI 100 // (ms)
54 #define WCMD_ACTIVE_SCAN_TIME 50 //(ms)
55 #define WCMD_PASSIVE_SCAN_TIME 100 //(ms)
57 #define DEFAULT_MSDU_LIFETIME 512 // ms
58 #define DEFAULT_MSDU_LIFETIME_RES_64us 8000 // 64us
60 #define DEFAULT_MGN_LIFETIME 8 // ms
61 #define DEFAULT_MGN_LIFETIME_RES_64us 125 // 64us
63 #define MAKE_BEACON_RESERVED 10 //(us)
65 #define TIM_MULTICAST_MASK 0x01
66 #define TIM_BITMAPOFFSET_MASK 0xFE
67 #define DEFAULT_DTIM_PERIOD 1
69 #define AP_LONG_RETRY_LIMIT 4
71 #define DEFAULT_IBSS_CHANNEL 6 //2.4G
73 /*--------------------- Export Classes ----------------------------*/
75 /*--------------------- Export Variables --------------------------*/
77 /*--------------------- Export Types ------------------------------*/
78 #define timer_expire(timer, next_tick) mod_timer(&timer, RUN_AT(next_tick))
79 typedef void (*TimerFunction)(unsigned long);
83 typedef unsigned char NDIS_802_11_MAC_ADDRESS[6];
84 typedef struct _NDIS_802_11_AI_REQFI {
85 unsigned short Capabilities;
86 unsigned short ListenInterval;
87 NDIS_802_11_MAC_ADDRESS CurrentAPAddress;
88 } NDIS_802_11_AI_REQFI, *PNDIS_802_11_AI_REQFI;
90 typedef struct _NDIS_802_11_AI_RESFI {
91 unsigned short Capabilities;
92 unsigned short StatusCode;
93 unsigned short AssociationId;
94 } NDIS_802_11_AI_RESFI, *PNDIS_802_11_AI_RESFI;
96 typedef struct _NDIS_802_11_ASSOCIATION_INFORMATION {
98 unsigned short AvailableRequestFixedIEs;
99 NDIS_802_11_AI_REQFI RequestFixedIEs;
100 unsigned long RequestIELength;
101 unsigned long OffsetRequestIEs;
102 unsigned short AvailableResponseFixedIEs;
103 NDIS_802_11_AI_RESFI ResponseFixedIEs;
104 unsigned long ResponseIELength;
105 unsigned long OffsetResponseIEs;
106 } NDIS_802_11_ASSOCIATION_INFORMATION, *PNDIS_802_11_ASSOCIATION_INFORMATION;
108 typedef struct tagSAssocInfo {
109 NDIS_802_11_ASSOCIATION_INFORMATION AssocInfo;
110 unsigned char abyIEs[WLAN_BEACON_FR_MAXLEN+WLAN_BEACON_FR_MAXLEN];
111 // store ReqIEs set by OID_802_11_ASSOCIATION_INFORMATION
112 unsigned long RequestIELength;
113 unsigned char abyReqIEs[WLAN_BEACON_FR_MAXLEN];
114 } SAssocInfo, *PSAssocInfo;