24 #define IEEE802_DSAP_SNAP_PACKET_UNNUMBERED (0xAA) 27 #define IEEE802_SSAP_SNAP_PACKET_UNNUMBERED (0xAA) 30 #define IEEE802_CONTROL_SNAP_PACKET_UNNUMBERED (0x03) 41 #define IEEE802_OUI_ETHERNET_TYPE (0x00) 42 #define IEEE801_OUI_DEC (0xF8) 45 #define IEEE802_P80211_OUI_LEN (3) 60 #define IEEE80211_TYPE_MANAGEMENT (0x0) 61 #define IEEE80211_TYPE_CONTROL (0x1) 62 #define IEEE80211_TYPE_DATA (0x2) 64 #define IEEE80211_SUBTYPE_DATA (0x0) 65 #define IEEE80211_SUBTYPE_NULL (0x4) 66 #define IEEE80211_SUBTYPE_QOS (0x8) 82 typedef struct _Ieee802_3_Header
84 MACADDRESS_48 destination;
86 beuint16_t typeOrLength;
88 } __attribute__((packed)) Ieee802_3_Header;
101 typedef struct _Ieee802_2_SnapHeader
109 uint8_t oui[IEEE802_P80211_OUI_LEN];
112 beuint16_t protocolType;
114 } __attribute__((packed)) Ieee802_2_SnapHeader;
136 typedef struct _FrameControl
143 uint16_t fragmented : 1;
146 uint16_t subType : 4;
148 uint16_t version : 2;
150 } __attribute__((packed)) FrameControl;
173 typedef struct _Ieee802_11_Header
175 FrameControl frameControl;
176 beuint16_t durationId;
177 MACADDRESS_48 address1;
178 MACADDRESS_48 address2;
179 MACADDRESS_48 address3;
182 } __attribute__((packed)) Ieee802_11_Header;