pub const DOT11_FRAME_CONTROL_LEN: usize = 2;
pub const DOT11_DURATION_ID_LEN: usize = 2;
pub const DOT11_ADDRESS_LEN: usize = 6;
pub const DOT11_SEQUENCE_CONTROL_LEN: usize = 2;
pub const DOT11_QOS_CONTROL_LEN: usize = 2;
pub const DOT11_HT_CONTROL_LEN: usize = 4;
pub const DOT11_MIN_HEADER_LEN: usize =
DOT11_FRAME_CONTROL_LEN + DOT11_DURATION_ID_LEN + DOT11_ADDRESS_LEN;
pub const DOT11_DATA_HEADER_LEN: usize = DOT11_FRAME_CONTROL_LEN
+ DOT11_DURATION_ID_LEN
+ (DOT11_ADDRESS_LEN * 3)
+ DOT11_SEQUENCE_CONTROL_LEN;
pub const DOT11_DATA_ADDR4_HEADER_LEN: usize = DOT11_DATA_HEADER_LEN + DOT11_ADDRESS_LEN;
pub const DOT11_CONTROL_ONE_ADDRESS_HEADER_LEN: usize = DOT11_MIN_HEADER_LEN;
pub const DOT11_CONTROL_TWO_ADDRESS_HEADER_LEN: usize =
DOT11_FRAME_CONTROL_LEN + DOT11_DURATION_ID_LEN + (DOT11_ADDRESS_LEN * 2);
pub const DOT11_MGMT_ASSOCIATION_REQUEST_FIXED_LEN: usize = 4;
pub const DOT11_MGMT_ASSOCIATION_RESPONSE_FIXED_LEN: usize = 6;
pub const DOT11_MGMT_REASSOCIATION_REQUEST_FIXED_LEN: usize = 10;
pub const DOT11_MGMT_REASSOCIATION_RESPONSE_FIXED_LEN: usize = 6;
pub const DOT11_MGMT_PROBE_RESPONSE_FIXED_LEN: usize = 12;
pub const DOT11_MGMT_BEACON_FIXED_LEN: usize = 12;
pub const DOT11_MGMT_DISASSOCIATION_FIXED_LEN: usize = 2;
pub const DOT11_MGMT_AUTHENTICATION_FIXED_LEN: usize = 6;
pub const DOT11_MGMT_DEAUTHENTICATION_FIXED_LEN: usize = 2;
pub const DOT11_MGMT_ACTION_FIXED_LEN: usize = 1;
pub const DOT11_FC_PROTOCOL_VERSION_MASK: u16 = 0x0003;
pub const DOT11_FC_PROTOCOL_VERSION_SHIFT: u8 = 0;
pub const DOT11_FC_TYPE_MASK: u16 = 0x000c;
pub const DOT11_FC_TYPE_SHIFT: u8 = 2;
pub const DOT11_FC_SUBTYPE_MASK: u16 = 0x00f0;
pub const DOT11_FC_SUBTYPE_SHIFT: u8 = 4;
pub const DOT11_FC_TO_DS: u16 = 0x0100;
pub const DOT11_FC_FROM_DS: u16 = 0x0200;
pub const DOT11_FC_MORE_FRAGMENTS: u16 = 0x0400;
pub const DOT11_FC_RETRY: u16 = 0x0800;
pub const DOT11_FC_POWER_MANAGEMENT: u16 = 0x1000;
pub const DOT11_FC_MORE_DATA: u16 = 0x2000;
pub const DOT11_FC_PROTECTED: u16 = 0x4000;
pub const DOT11_FC_ORDER: u16 = 0x8000;
pub const DOT11_FRAME_TYPE_MANAGEMENT: u8 = 0;
pub const DOT11_FRAME_TYPE_CONTROL: u8 = 1;
pub const DOT11_FRAME_TYPE_DATA: u8 = 2;
pub const DOT11_FRAME_TYPE_EXTENSION: u8 = 3;
pub const DOT11_MGMT_SUBTYPE_ASSOCIATION_REQUEST: u8 = 0;
pub const DOT11_MGMT_SUBTYPE_ASSOCIATION_RESPONSE: u8 = 1;
pub const DOT11_MGMT_SUBTYPE_REASSOCIATION_REQUEST: u8 = 2;
pub const DOT11_MGMT_SUBTYPE_REASSOCIATION_RESPONSE: u8 = 3;
pub const DOT11_MGMT_SUBTYPE_PROBE_REQUEST: u8 = 4;
pub const DOT11_MGMT_SUBTYPE_PROBE_RESPONSE: u8 = 5;
pub const DOT11_MGMT_SUBTYPE_TIMING_ADVERTISEMENT: u8 = 6;
pub const DOT11_MGMT_SUBTYPE_BEACON: u8 = 8;
pub const DOT11_MGMT_SUBTYPE_ATIM: u8 = 9;
pub const DOT11_MGMT_SUBTYPE_DISASSOCIATION: u8 = 10;
pub const DOT11_MGMT_SUBTYPE_AUTHENTICATION: u8 = 11;
pub const DOT11_MGMT_SUBTYPE_DEAUTHENTICATION: u8 = 12;
pub const DOT11_MGMT_SUBTYPE_ACTION: u8 = 13;
pub const DOT11_MGMT_SUBTYPE_ACTION_NO_ACK: u8 = 14;
pub const DOT11_CONTROL_SUBTYPE_TRIGGER: u8 = 2;
pub const DOT11_CONTROL_SUBTYPE_CONTROL_WRAPPER: u8 = 7;
pub const DOT11_CONTROL_SUBTYPE_BLOCK_ACK_REQUEST: u8 = 8;
pub const DOT11_CONTROL_SUBTYPE_BLOCK_ACK: u8 = 9;
pub const DOT11_CONTROL_SUBTYPE_PS_POLL: u8 = 10;
pub const DOT11_CONTROL_SUBTYPE_RTS: u8 = 11;
pub const DOT11_CONTROL_SUBTYPE_CTS: u8 = 12;
pub const DOT11_CONTROL_SUBTYPE_ACK: u8 = 13;
pub const DOT11_CONTROL_SUBTYPE_CF_END: u8 = 14;
pub const DOT11_CONTROL_SUBTYPE_CF_END_CF_ACK: u8 = 15;
pub const DOT11_DATA_SUBTYPE_DATA: u8 = 0;
pub const DOT11_DATA_SUBTYPE_DATA_CF_ACK: u8 = 1;
pub const DOT11_DATA_SUBTYPE_DATA_CF_POLL: u8 = 2;
pub const DOT11_DATA_SUBTYPE_DATA_CF_ACK_CF_POLL: u8 = 3;
pub const DOT11_DATA_SUBTYPE_NULL: u8 = 4;
pub const DOT11_DATA_SUBTYPE_CF_ACK: u8 = 5;
pub const DOT11_DATA_SUBTYPE_CF_POLL: u8 = 6;
pub const DOT11_DATA_SUBTYPE_CF_ACK_CF_POLL: u8 = 7;
pub const DOT11_DATA_SUBTYPE_QOS_DATA: u8 = 8;
pub const DOT11_DATA_SUBTYPE_QOS_DATA_CF_ACK: u8 = 9;
pub const DOT11_DATA_SUBTYPE_QOS_DATA_CF_POLL: u8 = 10;
pub const DOT11_DATA_SUBTYPE_QOS_DATA_CF_ACK_CF_POLL: u8 = 11;
pub const DOT11_DATA_SUBTYPE_QOS_NULL: u8 = 12;
pub const DOT11_DATA_SUBTYPE_QOS_CF_POLL: u8 = 14;
pub const DOT11_DATA_SUBTYPE_QOS_CF_ACK_CF_POLL: u8 = 15;
pub const DOT11_SEQUENCE_FRAGMENT_NUMBER_MASK: u16 = 0x000f;
pub const DOT11_SEQUENCE_FRAGMENT_NUMBER_SHIFT: u8 = 0;
pub const DOT11_SEQUENCE_NUMBER_MASK: u16 = 0xfff0;
pub const DOT11_SEQUENCE_NUMBER_SHIFT: u8 = 4;
pub const DOT11_QOS_TID_MASK: u16 = 0x000f;
pub const DOT11_QOS_TID_SHIFT: u8 = 0;
pub const DOT11_QOS_EOSP: u16 = 0x0010;
pub const DOT11_QOS_ACK_POLICY_MASK: u16 = 0x0060;
pub const DOT11_QOS_ACK_POLICY_SHIFT: u8 = 5;
pub const DOT11_QOS_A_MSDU_PRESENT: u16 = 0x0080;
pub const DOT11_QOS_TXOP_QUEUE_SIZE_MASK: u16 = 0xff00;
pub const DOT11_QOS_TXOP_QUEUE_SIZE_SHIFT: u8 = 8;
pub const DOT11_CATEGORY_SPECTRUM_MANAGEMENT: u8 = 0;
pub const DOT11_CATEGORY_QOS: u8 = 1;
pub const DOT11_CATEGORY_DLS: u8 = 2;
pub const DOT11_CATEGORY_BLOCK_ACK: u8 = 3;
pub const DOT11_CATEGORY_PUBLIC: u8 = 4;
pub const DOT11_CATEGORY_RADIO_MEASUREMENT: u8 = 5;
pub const DOT11_CATEGORY_FAST_BSS_TRANSITION: u8 = 6;
pub const DOT11_CATEGORY_HT: u8 = 7;
pub const DOT11_CATEGORY_SA_QUERY: u8 = 8;
pub const DOT11_CATEGORY_PROTECTED_DUAL_OF_PUBLIC_ACTION: u8 = 9;
pub const DOT11_CATEGORY_WNM: u8 = 10;
pub const DOT11_CATEGORY_UNPROTECTED_WNM: u8 = 11;
pub const DOT11_CATEGORY_TDLS: u8 = 12;
pub const DOT11_CATEGORY_MESH: u8 = 13;
pub const DOT11_CATEGORY_MULTIHOP: u8 = 14;
pub const DOT11_CATEGORY_SELF_PROTECTED: u8 = 15;
pub const DOT11_CAPABILITY_ESS: u16 = 0x0001;
pub const DOT11_CAPABILITY_IBSS: u16 = 0x0002;
pub const DOT11_CAPABILITY_CF_POLLABLE: u16 = 0x0004;
pub const DOT11_CAPABILITY_CF_POLL_REQUEST: u16 = 0x0008;
pub const DOT11_CAPABILITY_PRIVACY: u16 = 0x0010;
pub const DOT11_CAPABILITY_SHORT_PREAMBLE: u16 = 0x0020;
pub const DOT11_CAPABILITY_PBCC: u16 = 0x0040;
pub const DOT11_CAPABILITY_CHANNEL_AGILITY: u16 = 0x0080;
pub const DOT11_CAPABILITY_SPECTRUM_MANAGEMENT: u16 = 0x0100;
pub const DOT11_CAPABILITY_QOS: u16 = 0x0200;
pub const DOT11_CAPABILITY_SHORT_SLOT_TIME: u16 = 0x0400;
pub const DOT11_CAPABILITY_APSD: u16 = 0x0800;
pub const DOT11_CAPABILITY_RADIO_MEASUREMENT: u16 = 0x1000;
pub const DOT11_CAPABILITY_DSSS_OFDM: u16 = 0x2000;
pub const DOT11_CAPABILITY_DELAYED_BLOCK_ACK: u16 = 0x4000;
pub const DOT11_CAPABILITY_IMMEDIATE_BLOCK_ACK: u16 = 0x8000;
pub const DOT11_TAG_SSID: u8 = 0;
pub const DOT11_TAG_SUPPORTED_RATES: u8 = 1;
pub const DOT11_TAG_DS_PARAMETER_SET: u8 = 3;
pub const DOT11_TAG_TIM: u8 = 5;
pub const DOT11_TAG_RSN: u8 = 48;