1 /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
4 // This file contains the definitions and data structures used by SW-MAC.
9 // 0.2 20021004 PD43 CCLiu6
10 // 20021018 PD43 CCLiu6
11 // Add enum_TxRate type
12 // Modify enum_STAState type
13 // 0.3 20021023 PE23 CYLiu update MAC session struct
15 // 20021122 PD43 Austin
16 // Deleted some unused.
17 // 20021129 PD43 Austin
18 // 20030617 increase the 802.11g definition
19 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
21 #ifndef _MAC_Structures_H_
22 #define _MAC_Structures_H_
24 #define MAC_ADDR_LENGTH 6
26 /* ========================================================
27 // 802.11 Frame define
29 #define DOT_11_MAC_HEADER_SIZE 24
30 #define DOT_11_SNAP_SIZE 6
31 #define DOT_11_DURATION_OFFSET 2
32 /* Sequence control offset */
33 #define DOT_11_SEQUENCE_OFFSET 22
34 /* The start offset of 802.11 Frame// */
35 #define DOT_11_TYPE_OFFSET 30
36 #define DOT_11_DATA_OFFSET 24
37 #define DOT_11_DA_OFFSET 4
39 #define MAX_ETHERNET_PACKET_SIZE 1514
41 /* ----- management : Type of Bits (2, 3) and Subtype of Bits (4, 5, 6, 7) */
42 #define MAC_SUBTYPE_MNGMNT_ASSOC_REQUEST 0x00
43 #define MAC_SUBTYPE_MNGMNT_ASSOC_RESPONSE 0x10
44 #define MAC_SUBTYPE_MNGMNT_REASSOC_REQUEST 0x20
45 #define MAC_SUBTYPE_MNGMNT_REASSOC_RESPONSE 0x30
46 #define MAC_SUBTYPE_MNGMNT_PROBE_REQUEST 0x40
47 #define MAC_SUBTYPE_MNGMNT_PROBE_RESPONSE 0x50
48 #define MAC_SUBTYPE_MNGMNT_BEACON 0x80
49 #define MAC_SUBTYPE_MNGMNT_ATIM 0x90
50 #define MAC_SUBTYPE_MNGMNT_DISASSOCIATION 0xA0
51 #define MAC_SUBTYPE_MNGMNT_AUTHENTICATION 0xB0
52 #define MAC_SUBTYPE_MNGMNT_DEAUTHENTICATION 0xC0
57 #define RATE_5dot5M 11
71 #endif /* _MAC_Structure_H_ */