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.
21 * Purpose: define basic common types and macros
34 /******* Common definitions and typedefs ***********************************/
48 //2007-0115-05<Add>by MikeLiu
56 //2007-0814-01<Add>by MikeLiu
61 //2008-0131-02<Add>by MikeLiu
80 //2007-0809-01<Add>by MikeLiu
81 #ifndef update_BssList
82 #define update_BssList
85 #ifndef WPA_SM_Transtatus
86 #define WPA_SM_Transtatus
89 #ifndef Calcu_LinkQual
90 #define Calcu_LinkQual
93 /****** Simple typedefs ***************************************************/
95 /* These lines assume that your compiler's longs are 32 bits and
96 * shorts are 16 bits. It is already assumed that chars are 8 bits,
97 * but it doesn't matter if they're signed or unsigned.
100 typedef signed char I8; /* 8-bit signed integer */
102 typedef unsigned char U8; /* 8-bit unsigned integer */
103 typedef unsigned short U16; /* 16-bit unsigned integer */
104 typedef unsigned long U32; /* 32-bit unsigned integer */
108 typedef signed short SHORT;
109 typedef signed int INT;
110 typedef signed long LONG;
112 typedef unsigned char UCHAR;
113 typedef unsigned short USHORT;
114 typedef unsigned int UINT;
115 typedef unsigned long ULONG;
116 typedef unsigned long long ULONGLONG; //64 bit
120 typedef unsigned char BYTE; // 8-bit
121 typedef unsigned short WORD; // 16-bit
122 typedef unsigned long DWORD; // 32-bit
124 // QWORD is for those situation that we want
125 // an 8-byte-aligned 8 byte long structure
126 // which is NOT really a floating point number.
127 typedef union tagUQuadWord {
132 double DoNotUseThisField;
134 typedef UQuadWord QWORD; // 64-bit
137 /****** Common pointer types ***********************************************/
139 typedef unsigned long ULONG_PTR; // 32-bit
140 typedef unsigned long DWORD_PTR; // 32-bit
143 typedef unsigned int * PUINT;
145 typedef BYTE * PBYTE;
147 typedef WORD * PWORD;
149 typedef DWORD * PDWORD;
151 typedef QWORD * PQWORD;
153 typedef void * PVOID;
155 // handle declaration
157 typedef void *HANDLE;
159 typedef PVOID HANDLE;
162 #endif // __TTYPE_H__