1 /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 // MAC_Structures.h 3 // 4 // This file contains the definitions and data structures used by SW-MAC. 5 // 6 // Revision Histoy 7 //================= 8 // 0.1 2002 UN00 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 14 // 20021108 15 // 20021122 PD43 Austin 16 // Deleted some unused. 17 // 20021129 PD43 Austin 18 // 20030617 increase the 802.11g definition 19 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 20 21 #ifndef _MAC_Structures_H_ 22 #define _MAC_Structures_H_ 23 24 #define MAC_ADDR_LENGTH 6 25 26 /* ======================================================== 27 // 802.11 Frame define 28 //----- */ 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 38 39 #define MAX_ETHERNET_PACKET_SIZE 1514 40 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 53 54 #define RATE_AUTO 0 55 #define RATE_1M 2 56 #define RATE_2M 4 57 #define RATE_5dot5M 11 58 #define RATE_6M 12 59 #define RATE_9M 18 60 #define RATE_11M 22 61 #define RATE_12M 24 62 #define RATE_18M 36 63 #define RATE_22M 44 64 #define RATE_24M 48 65 #define RATE_33M 66 66 #define RATE_36M 72 67 #define RATE_48M 96 68 #define RATE_54M 108 69 #define RATE_MAX 255 70 71 #endif /* _MAC_Structure_H_ */ 72