diff --git a/core/mac/src/cfg/cfgUtil/dot11f.frms b/core/mac/src/cfg/cfgUtil/dot11f.frms index f9797d8fc7..e4b47739c2 100644 --- a/core/mac/src/cfg/cfgUtil/dot11f.frms +++ b/core/mac/src/cfg/cfgUtil/dot11f.frms @@ -224,6 +224,29 @@ const TLV_OPERATING_CHANNEL = 17; const TLV_INVITATION_FLAGS = 18; const TLV_P2P_VENDOR_SPECIFIC = 221; + +///////////////////////////////////////////////////////////////////////////// +// MBO-OCE Attributes (0, 151-255: Reserved) // +///////////////////////////////////////////////////////////////////////////// +const TLV_MBO_AP_CAP_ATTR = 1; +const TLV_NON_PREFERRED_CHAN_REPORT_ATTR = 2; +const TLV_CELLULAR_DATA_CAP_ATTR = 3; +const TLV_ASSOC_DISSALLOWED_ATTR = 4; +const TLV_CELLULAR_DATA_CON_PREF_ATTR = 5; +const TLV_TRANSITION_REASON_CODE_ATTR = 6; +const TLV_TRANSITION_REJECT_REASON_CODE_ATTR = 7; +const TLV_ASSOC_RETRY_DELAY_ATTR = 8; + +// 9-100 : Reserved for MBO // + +// OCE ATTRIBUTES // +const TLV_OCE_CAP_IND_ATTR = 101; +const TLV_RSSI_ASSOC_REJ_ATTR = 102; +const TLV_REDUCED_WAN_METRICS_ATTR = 103; +// 104-150 : Reserved for OCE + + + ///////////////////////////////////////////////////////////////////////////// // Fixed Fields @@ -1063,6 +1086,76 @@ TLV OperatingChannel ( TLV_OPERATING_CHANNEL ) ( 1 : 2 ) LSB channel, 1; } +/////////////////////////////////////////////////////////////////////////// +// MBO-OCE ATTR TLVs // +/////////////////////////////////////////////////////////////////////////// + +TLV mbo_ap_cap ( TLV_MBO_AP_CAP_ATTR ) ( 1 : 1 ) LSB +{ + mbo_cap_ind, 1; +} + +TLV non_prefferd_chan_rep ( TLV_NON_PREFERRED_CHAN_REPORT_ATTR ) ( 1 : 1 ) LSB +{ + oper_class, 1; + channel_report[3..254]; +} + +TLV cellular_data_cap ( TLV_CELLULAR_DATA_CAP_ATTR ) ( 1 : 1 ) LSB +{ + cellular_connectivity, 1; +} + +TLV assoc_disallowed ( TLV_ASSOC_DISSALLOWED_ATTR ) ( 1 : 1 ) LSB +{ + reason_code, 1; +} + +TLV cellular_data_con_pref ( TLV_CELLULAR_DATA_CON_PREF_ATTR ) ( 1 : 1 ) LSB +{ + cellular_preference, 1; +} + +TLV transition_reason ( TLV_TRANSITION_REASON_CODE_ATTR ) ( 1 : 1 ) LSB +{ + transition_reason_code, 1; +} + +TLV transition_reject_reason ( TLV_TRANSITION_REJECT_REASON_CODE_ATTR ) ( 1 : 1 ) LSB +{ + transition_reject_code, 1; +} + +TLV assoc_retry_delay ( TLV_ASSOC_RETRY_DELAY_ATTR ) ( 1 : 1 ) LSB +{ + delay, 2; +} + +// OCE Attributes // + +TLV oce_cap ( TLV_OCE_CAP_IND_ATTR ) ( 1 : 1 ) LSB +{ + { + oce_release: 3; + is_sta_cfon : 1; + non_oce_ap_present : 1; + reserved: 3; + } +} + +TLV rssi_assoc_rej ( TLV_RSSI_ASSOC_REJ_ATTR ) ( 1 : 1 ) LSB +{ + delta_rssi, 1; + retry_delay, 1; +} + +TLV reduced_wan_metrics ( TLV_REDUCED_WAN_METRICS_ATTR ) ( 1 : 1 ) LSB +{ + { + downlink_av_cap: 4; + uplink_av_cap : 4; + } +} /** * \brief Vendor Extension @@ -2483,12 +2576,6 @@ IE TimeAdvertisement (EID_TIME_ADVERTISEMENT) // 8.4.2.63 time_error[5]; } -IE MBO_IE (EID_VENDOR_SPECIFIC) OUI ( 0x50, 0x6F, 0x9A, 0x16 ) -{ - mbo_cap[3]; - assoc_disallowed[0..3]; -} - IE QCN_IE (EID_VENDOR_SPECIFIC) OUI ( 0x8C, 0xFD, 0xF0, 0x01 ) { version[4]; @@ -3200,6 +3287,21 @@ MULTIIE P2PDisAssoc ( EID_VENDOR_SPECIFIC ) OUI( 0x50, 0x6F, 0x9A, 0x09 ) MANDATORYTLV MinorReasonCode; } +MULTIIE MBO_IE (EID_VENDOR_SPECIFIC) OUI ( 0x50, 0x6F, 0x9A, 0x16 ) +{ + OPTIONALTLV mbo_ap_cap; + OPTIONALTLV non_prefferd_chan_rep; + OPTIONALTLV cellular_data_cap ; + OPTIONALTLV assoc_disallowed; + OPTIONALTLV cellular_data_con_pref; + OPTIONALTLV transition_reason; + OPTIONALTLV transition_reject_reason; + OPTIONALTLV assoc_retry_delay; + OPTIONALTLV oce_cap; + OPTIONALTLV rssi_assoc_rej; + OPTIONALTLV reduced_wan_metrics; +} + IE vendor_vht_ie (EID_VENDOR_SPECIFIC) OUI (0x00, 0x90, 0x4c) { type, 1; diff --git a/core/mac/src/include/dot11f.h b/core/mac/src/include/dot11f.h index 18e61395fc..3885b4b19a 100644 --- a/core/mac/src/include/dot11f.h +++ b/core/mac/src/include/dot11f.h @@ -35,7 +35,7 @@ * * * This file was automatically generated by 'framesc' - * Thu Jun 22 10:47:16 2017 from the following file(s): + * Thu Jul 6 16:41:06 2017 from the following file(s): * * dot11f.frms * @@ -2035,6 +2035,431 @@ uint32_t dot11f_get_packed_tlv_WPSState( }; /* End extern "C". */ #endif /* C++ */ +/* ID 4 (0x0004) */ +typedef struct sDot11fTLVassoc_disallowed { + uint8_t present; + uint8_t reason_code; +} tDot11fTLVassoc_disallowed; + +#define DOT11F_TLV_ASSOC_DISALLOWED (4) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_ASSOC_DISALLOWED_MIN_LEN (1) + +#define DOT11F_TLV_ASSOC_DISALLOWED_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_assoc_disallowed( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVassoc_disallowed*); + +uint32_t dot11f_pack_tlv_assoc_disallowed( + tpAniSirGlobal, + tDot11fTLVassoc_disallowed *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_assoc_disallowed( + tpAniSirGlobal, + tDot11fTLVassoc_disallowed *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 8 (0x0008) */ +typedef struct sDot11fTLVassoc_retry_delay { + uint8_t present; + uint16_t delay; +} tDot11fTLVassoc_retry_delay; + +#define DOT11F_TLV_ASSOC_RETRY_DELAY (8) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_ASSOC_RETRY_DELAY_MIN_LEN (2) + +#define DOT11F_TLV_ASSOC_RETRY_DELAY_MAX_LEN (2) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_assoc_retry_delay( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVassoc_retry_delay*); + +uint32_t dot11f_pack_tlv_assoc_retry_delay( + tpAniSirGlobal, + tDot11fTLVassoc_retry_delay *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_assoc_retry_delay( + tpAniSirGlobal, + tDot11fTLVassoc_retry_delay *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 3 (0x0003) */ +typedef struct sDot11fTLVcellular_data_cap { + uint8_t present; + uint8_t cellular_connectivity; +} tDot11fTLVcellular_data_cap; + +#define DOT11F_TLV_CELLULAR_DATA_CAP (3) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_CELLULAR_DATA_CAP_MIN_LEN (1) + +#define DOT11F_TLV_CELLULAR_DATA_CAP_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_cellular_data_cap( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVcellular_data_cap*); + +uint32_t dot11f_pack_tlv_cellular_data_cap( + tpAniSirGlobal, + tDot11fTLVcellular_data_cap *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_cellular_data_cap( + tpAniSirGlobal, + tDot11fTLVcellular_data_cap *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 5 (0x0005) */ +typedef struct sDot11fTLVcellular_data_con_pref { + uint8_t present; + uint8_t cellular_preference; +} tDot11fTLVcellular_data_con_pref; + +#define DOT11F_TLV_CELLULAR_DATA_CON_PREF (5) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_CELLULAR_DATA_CON_PREF_MIN_LEN (1) + +#define DOT11F_TLV_CELLULAR_DATA_CON_PREF_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_cellular_data_con_pref( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVcellular_data_con_pref*); + +uint32_t dot11f_pack_tlv_cellular_data_con_pref( + tpAniSirGlobal, + tDot11fTLVcellular_data_con_pref *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_cellular_data_con_pref( + tpAniSirGlobal, + tDot11fTLVcellular_data_con_pref *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 1 (0x0001) */ +typedef struct sDot11fTLVmbo_ap_cap { + uint8_t present; + uint8_t mbo_cap_ind; +} tDot11fTLVmbo_ap_cap; + +#define DOT11F_TLV_MBO_AP_CAP (1) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_MBO_AP_CAP_MIN_LEN (1) + +#define DOT11F_TLV_MBO_AP_CAP_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_mbo_ap_cap( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVmbo_ap_cap*); + +uint32_t dot11f_pack_tlv_mbo_ap_cap( + tpAniSirGlobal, + tDot11fTLVmbo_ap_cap *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_mbo_ap_cap( + tpAniSirGlobal, + tDot11fTLVmbo_ap_cap *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 2 (0x0002) */ +typedef struct sDot11fTLVnon_prefferd_chan_rep { + uint8_t present; + uint8_t oper_class; + uint8_t num_channel_report; + uint8_t channel_report[254]; +} tDot11fTLVnon_prefferd_chan_rep; + +#define DOT11F_TLV_NON_PREFFERD_CHAN_REP (2) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_NON_PREFFERD_CHAN_REP_MIN_LEN (4) + +#define DOT11F_TLV_NON_PREFFERD_CHAN_REP_MAX_LEN (255) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_non_prefferd_chan_rep( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVnon_prefferd_chan_rep*); + +uint32_t dot11f_pack_tlv_non_prefferd_chan_rep( + tpAniSirGlobal, + tDot11fTLVnon_prefferd_chan_rep *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_non_prefferd_chan_rep( + tpAniSirGlobal, + tDot11fTLVnon_prefferd_chan_rep *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 101 (0x0065) */ +typedef struct sDot11fTLVoce_cap { + uint8_t present; + uint8_t oce_release:3; + uint8_t is_sta_cfon:1; + uint8_t non_oce_ap_present:1; + uint8_t reserved:3; +} tDot11fTLVoce_cap; + +#define DOT11F_TLV_OCE_CAP (101) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_OCE_CAP_MIN_LEN (1) + +#define DOT11F_TLV_OCE_CAP_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_oce_cap( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVoce_cap*); + +uint32_t dot11f_pack_tlv_oce_cap( + tpAniSirGlobal, + tDot11fTLVoce_cap *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_oce_cap( + tpAniSirGlobal, + tDot11fTLVoce_cap *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 103 (0x0067) */ +typedef struct sDot11fTLVreduced_wan_metrics { + uint8_t present; + uint8_t downlink_av_cap:4; + uint8_t uplink_av_cap:4; +} tDot11fTLVreduced_wan_metrics; + +#define DOT11F_TLV_REDUCED_WAN_METRICS (103) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_REDUCED_WAN_METRICS_MIN_LEN (1) + +#define DOT11F_TLV_REDUCED_WAN_METRICS_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_reduced_wan_metrics( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVreduced_wan_metrics*); + +uint32_t dot11f_pack_tlv_reduced_wan_metrics( + tpAniSirGlobal, + tDot11fTLVreduced_wan_metrics *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_reduced_wan_metrics( + tpAniSirGlobal, + tDot11fTLVreduced_wan_metrics *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 102 (0x0066) */ +typedef struct sDot11fTLVrssi_assoc_rej { + uint8_t present; + uint8_t delta_rssi; + uint8_t retry_delay; +} tDot11fTLVrssi_assoc_rej; + +#define DOT11F_TLV_RSSI_ASSOC_REJ (102) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_RSSI_ASSOC_REJ_MIN_LEN (2) + +#define DOT11F_TLV_RSSI_ASSOC_REJ_MAX_LEN (2) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_rssi_assoc_rej( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVrssi_assoc_rej*); + +uint32_t dot11f_pack_tlv_rssi_assoc_rej( + tpAniSirGlobal, + tDot11fTLVrssi_assoc_rej *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_rssi_assoc_rej( + tpAniSirGlobal, + tDot11fTLVrssi_assoc_rej *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 6 (0x0006) */ +typedef struct sDot11fTLVtransition_reason { + uint8_t present; + uint8_t transition_reason_code; +} tDot11fTLVtransition_reason; + +#define DOT11F_TLV_TRANSITION_REASON (6) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_TRANSITION_REASON_MIN_LEN (1) + +#define DOT11F_TLV_TRANSITION_REASON_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_transition_reason( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVtransition_reason*); + +uint32_t dot11f_pack_tlv_transition_reason( + tpAniSirGlobal, + tDot11fTLVtransition_reason *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_transition_reason( + tpAniSirGlobal, + tDot11fTLVtransition_reason *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + +/* ID 7 (0x0007) */ +typedef struct sDot11fTLVtransition_reject_reason { + uint8_t present; + uint8_t transition_reject_code; +} tDot11fTLVtransition_reject_reason; + +#define DOT11F_TLV_TRANSITION_REJECT_REASON (7) + +/* N.B. These #defines do *not* include the ID & length */ +#define DOT11F_TLV_TRANSITION_REJECT_REASON_MIN_LEN (1) + +#define DOT11F_TLV_TRANSITION_REJECT_REASON_MAX_LEN (1) + +#ifdef __cplusplus +extern "C" { +#endif /* C++ */ +uint32_t dot11f_unpack_tlv_transition_reject_reason( + tpAniSirGlobal, + uint8_t *, + uint16_t, + tDot11fTLVtransition_reject_reason*); + +uint32_t dot11f_pack_tlv_transition_reject_reason( + tpAniSirGlobal, + tDot11fTLVtransition_reject_reason *, + uint8_t *, + uint32_t, + uint32_t*); + +uint32_t dot11f_get_packed_tlv_transition_reject_reason( + tpAniSirGlobal, + tDot11fTLVtransition_reject_reason *, + uint32_t*); + +#ifdef __cplusplus +}; /* End extern "C". */ +#endif /* C++ */ + /* ID 16 (0x0010) */ typedef struct sDot11fTLVP2PInterface { uint8_t present; @@ -4956,20 +5381,28 @@ uint32_t dot11f_get_packed_ie_LinkIdentifier( }; /* End extern "C". */ #endif /* C++ */ -/* EID 221 (0xdd) {OUI 0x50, 0x6f, 0x9a, 0x16} */ +/* EID 221 (0xdd) {OUI 0x50, 0x6f, 0x9a, 0x16} (Multi-IE) */ typedef struct sDot11fIEMBO_IE { uint8_t present; - uint8_t mbo_cap[3]; - uint8_t num_assoc_disallowed; - uint8_t assoc_disallowed[3]; + tDot11fTLVmbo_ap_cap mbo_ap_cap; + tDot11fTLVnon_prefferd_chan_rep non_prefferd_chan_rep; + tDot11fTLVcellular_data_cap cellular_data_cap; + tDot11fTLVassoc_disallowed assoc_disallowed; + tDot11fTLVcellular_data_con_pref cellular_data_con_pref; + tDot11fTLVtransition_reason transition_reason; + tDot11fTLVtransition_reject_reason transition_reject_reason; + tDot11fTLVassoc_retry_delay assoc_retry_delay; + tDot11fTLVoce_cap oce_cap; + tDot11fTLVrssi_assoc_rej rssi_assoc_rej; + tDot11fTLVreduced_wan_metrics reduced_wan_metrics; } tDot11fIEMBO_IE; #define DOT11F_EID_MBO_IE (221) /* N.B. These #defines do *not* include the EID & length */ -#define DOT11F_IE_MBO_IE_MIN_LEN (7) +#define DOT11F_IE_MBO_IE_MIN_LEN (4) -#define DOT11F_IE_MBO_IE_MAX_LEN (10) +#define DOT11F_IE_MBO_IE_MAX_LEN (293) #ifdef __cplusplus extern "C" { diff --git a/core/mac/src/sys/legacy/src/utils/src/dot11f.c b/core/mac/src/sys/legacy/src/utils/src/dot11f.c index e9d5428af5..4b6623e922 100644 --- a/core/mac/src/sys/legacy/src/utils/src/dot11f.c +++ b/core/mac/src/sys/legacy/src/utils/src/dot11f.c @@ -33,7 +33,7 @@ * * * This file was automatically generated by 'framesc' - * Thu Jun 22 10:47:16 2017 from the following file(s): + * Thu Jul 6 16:41:06 2017 from the following file(s): * * dot11f.frms * @@ -1380,6 +1380,115 @@ uint32_t dot11f_unpack_tlv_version(tpAniSirGlobal pCtx, #define SigTlvWPSState (0x0023) +#define SigTlvassoc_disallowed (0x0024) + + +#define SigTlvassoc_retry_delay (0x0025) + + +#define SigTlvcellular_data_cap (0x0026) + + +#define SigTlvcellular_data_con_pref (0x0027) + + +#define SigTlvmbo_ap_cap (0x0028) + + +uint32_t dot11f_unpack_tlv_non_prefferd_chan_rep(tpAniSirGlobal pCtx, + uint8_t *pBuf, + uint16_t tlvlen, + tDot11fTLVnon_prefferd_chan_rep *pDst) +{ + uint32_t status = DOT11F_PARSE_SUCCESS; + pDst->present = 1; + pDst->oper_class = *pBuf; + pBuf += 1; + tlvlen -= (uint8_t)1; + pDst->num_channel_report = (uint8_t)(tlvlen); + if (tlvlen > 254) { + pDst->present = 0; + return DOT11F_SKIPPED_BAD_IE; + } + + DOT11F_MEMCPY(pCtx, pDst->channel_report, pBuf, (tlvlen)); + pBuf += (tlvlen); + tlvlen -= (tlvlen); + (void)pCtx; + return status; +} /* End dot11f_unpack_tlv_non_prefferd_chan_rep. */ + +#define SigTlvnon_prefferd_chan_rep (0x0029) + + +uint32_t dot11f_unpack_tlv_oce_cap(tpAniSirGlobal pCtx, + uint8_t *pBuf, + uint16_t tlvlen, + tDot11fTLVoce_cap *pDst) +{ + uint32_t status = DOT11F_PARSE_SUCCESS; + uint8_t tmp10__; + pDst->present = 1; + tmp10__ = *pBuf; + pBuf += 1; + tlvlen -= 1; + pDst->oce_release = tmp10__ >> 0 & 0x7; + pDst->is_sta_cfon = tmp10__ >> 3 & 0x1; + pDst->non_oce_ap_present = tmp10__ >> 4 & 0x1; + pDst->reserved = tmp10__ >> 5 & 0x7; + (void)pCtx; + return status; +} /* End dot11f_unpack_tlv_oce_cap. */ + +#define SigTlvoce_cap (0x002a) + + +uint32_t dot11f_unpack_tlv_reduced_wan_metrics(tpAniSirGlobal pCtx, + uint8_t *pBuf, + uint16_t tlvlen, + tDot11fTLVreduced_wan_metrics *pDst) +{ + uint32_t status = DOT11F_PARSE_SUCCESS; + uint8_t tmp11__; + pDst->present = 1; + tmp11__ = *pBuf; + pBuf += 1; + tlvlen -= 1; + pDst->downlink_av_cap = tmp11__ >> 0 & 0xf; + pDst->uplink_av_cap = tmp11__ >> 4 & 0xf; + (void)pCtx; + return status; +} /* End dot11f_unpack_tlv_reduced_wan_metrics. */ + +#define SigTlvreduced_wan_metrics (0x002b) + + +uint32_t dot11f_unpack_tlv_rssi_assoc_rej(tpAniSirGlobal pCtx, + uint8_t *pBuf, + uint16_t tlvlen, + tDot11fTLVrssi_assoc_rej *pDst) +{ + uint32_t status = DOT11F_PARSE_SUCCESS; + pDst->present = 1; + pDst->delta_rssi = *pBuf; + pBuf += 1; + tlvlen -= (uint8_t)1; + pDst->retry_delay = *pBuf; + pBuf += 1; + tlvlen -= (uint8_t)1; + (void)pCtx; + return status; +} /* End dot11f_unpack_tlv_rssi_assoc_rej. */ + +#define SigTlvrssi_assoc_rej (0x002c) + + +#define SigTlvtransition_reason (0x002d) + + +#define SigTlvtransition_reject_reason (0x002e) + + uint32_t dot11f_unpack_tlv_p2_p_interface(tpAniSirGlobal pCtx, uint8_t *pBuf, uint16_t tlvlen, @@ -1394,10 +1503,10 @@ uint32_t dot11f_unpack_tlv_p2_p_interface(tpAniSirGlobal pCtx, return status; } /* End dot11f_unpack_tlv_p2_p_interface. */ -#define SigTlvP2PInterface (0x0024) +#define SigTlvP2PInterface (0x002f) -#define SigTlvP2PManageability (0x0025) +#define SigTlvP2PManageability (0x0030) uint32_t dot11f_unpack_ie_gtk(tpAniSirGlobal pCtx, @@ -1407,16 +1516,16 @@ uint32_t dot11f_unpack_ie_gtk(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp10__; + uint16_t tmp12__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp10__, pBuf, 0); + framesntohs(pCtx, &tmp12__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->keyId = tmp10__ >> 0 & 0x3; - pDst->reserved = tmp10__ >> 2 & 0x3feb; + pDst->keyId = tmp12__ >> 0 & 0x3; + pDst->reserved = tmp12__ >> 2 & 0x3feb; pDst->keyLength = *pBuf; pBuf += 1; ielen -= (uint8_t)1; @@ -1517,17 +1626,17 @@ uint32_t dot11f_unpack_ie_ppe_threshold(tpAniSirGlobal pCtx, { uint8_t ru_mask, ru_count; uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp11__; + uint8_t tmp13__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp11__ = *pBuf; + tmp13__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->nss_count = tmp11__ >> 0 & 0x7; - pDst->ru_idx_mask = tmp11__ >> 3 & 0xf; - pDst->ppet_b1 = tmp11__ >> 7 & 0x1; + pDst->nss_count = tmp13__ >> 0 & 0x7; + pDst->ru_idx_mask = tmp13__ >> 3 & 0xf; + pDst->ppet_b1 = tmp13__ >> 7 & 0x1; pDst->num_ppet = (uint8_t)(ielen); ru_mask = pDst->ru_idx_mask; for (ru_count = 0; ru_mask; ru_mask >>= 1) @@ -1762,59 +1871,59 @@ uint32_t dot11f_unpack_ie_rrm_enabled_cap(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp12__; - uint8_t tmp13__; uint8_t tmp14__; uint8_t tmp15__; uint8_t tmp16__; + uint8_t tmp17__; + uint8_t tmp18__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp12__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->LinkMeasurement = tmp12__ >> 0 & 0x1; - pDst->NeighborRpt = tmp12__ >> 1 & 0x1; - pDst->parallel = tmp12__ >> 2 & 0x1; - pDst->repeated = tmp12__ >> 3 & 0x1; - pDst->BeaconPassive = tmp12__ >> 4 & 0x1; - pDst->BeaconActive = tmp12__ >> 5 & 0x1; - pDst->BeaconTable = tmp12__ >> 6 & 0x1; - pDst->BeaconRepCond = tmp12__ >> 7 & 0x1; - tmp13__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->FrameMeasurement = tmp13__ >> 0 & 0x1; - pDst->ChannelLoad = tmp13__ >> 1 & 0x1; - pDst->NoiseHistogram = tmp13__ >> 2 & 0x1; - pDst->statistics = tmp13__ >> 3 & 0x1; - pDst->LCIMeasurement = tmp13__ >> 4 & 0x1; - pDst->LCIAzimuth = tmp13__ >> 5 & 0x1; - pDst->TCMCapability = tmp13__ >> 6 & 0x1; - pDst->triggeredTCM = tmp13__ >> 7 & 0x1; tmp14__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->APChanReport = tmp14__ >> 0 & 0x1; - pDst->RRMMIBEnabled = tmp14__ >> 1 & 0x1; - pDst->operatingChanMax = tmp14__ >> 2 & 0x7; - pDst->nonOperatinChanMax = tmp14__ >> 5 & 0x7; + pDst->LinkMeasurement = tmp14__ >> 0 & 0x1; + pDst->NeighborRpt = tmp14__ >> 1 & 0x1; + pDst->parallel = tmp14__ >> 2 & 0x1; + pDst->repeated = tmp14__ >> 3 & 0x1; + pDst->BeaconPassive = tmp14__ >> 4 & 0x1; + pDst->BeaconActive = tmp14__ >> 5 & 0x1; + pDst->BeaconTable = tmp14__ >> 6 & 0x1; + pDst->BeaconRepCond = tmp14__ >> 7 & 0x1; tmp15__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->MeasurementPilot = tmp15__ >> 0 & 0x7; - pDst->MeasurementPilotEnabled = tmp15__ >> 3 & 0x1; - pDst->NeighborTSFOffset = tmp15__ >> 4 & 0x1; - pDst->RCPIMeasurement = tmp15__ >> 5 & 0x1; - pDst->RSNIMeasurement = tmp15__ >> 6 & 0x1; - pDst->BssAvgAccessDelay = tmp15__ >> 7 & 0x1; + pDst->FrameMeasurement = tmp15__ >> 0 & 0x1; + pDst->ChannelLoad = tmp15__ >> 1 & 0x1; + pDst->NoiseHistogram = tmp15__ >> 2 & 0x1; + pDst->statistics = tmp15__ >> 3 & 0x1; + pDst->LCIMeasurement = tmp15__ >> 4 & 0x1; + pDst->LCIAzimuth = tmp15__ >> 5 & 0x1; + pDst->TCMCapability = tmp15__ >> 6 & 0x1; + pDst->triggeredTCM = tmp15__ >> 7 & 0x1; tmp16__ = *pBuf; - pDst->BSSAvailAdmission = tmp16__ >> 0 & 0x1; - pDst->AntennaInformation = tmp16__ >> 1 & 0x1; - pDst->fine_time_meas_rpt = tmp16__ >> 2 & 0x1; - pDst->lci_capability = tmp16__ >> 3 & 0x1; - pDst->reserved = tmp16__ >> 4 & 0xf; + pBuf += 1; + ielen -= 1; + pDst->APChanReport = tmp16__ >> 0 & 0x1; + pDst->RRMMIBEnabled = tmp16__ >> 1 & 0x1; + pDst->operatingChanMax = tmp16__ >> 2 & 0x7; + pDst->nonOperatinChanMax = tmp16__ >> 5 & 0x7; + tmp17__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->MeasurementPilot = tmp17__ >> 0 & 0x7; + pDst->MeasurementPilotEnabled = tmp17__ >> 3 & 0x1; + pDst->NeighborTSFOffset = tmp17__ >> 4 & 0x1; + pDst->RCPIMeasurement = tmp17__ >> 5 & 0x1; + pDst->RSNIMeasurement = tmp17__ >> 6 & 0x1; + pDst->BssAvgAccessDelay = tmp17__ >> 7 & 0x1; + tmp18__ = *pBuf; + pDst->BSSAvailAdmission = tmp18__ >> 0 & 0x1; + pDst->AntennaInformation = tmp18__ >> 1 & 0x1; + pDst->fine_time_meas_rpt = tmp18__ >> 2 & 0x1; + pDst->lci_capability = tmp18__ >> 3 & 0x1; + pDst->reserved = tmp18__ >> 4 & 0xf; (void)pCtx; return status; } /* End dot11f_unpack_ie_rrm_enabled_cap. */ @@ -1876,18 +1985,18 @@ uint32_t dot11f_unpack_ie_schedule(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp17__; + uint16_t tmp19__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp17__, pBuf, 0); + framesntohs(pCtx, &tmp19__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->aggregation = tmp17__ >> 0 & 0x1; - pDst->tsid = tmp17__ >> 1 & 0xf; - pDst->direction = tmp17__ >> 5 & 0x3; - pDst->reserved = tmp17__ >> 7 & 0x1ff; + pDst->aggregation = tmp19__ >> 0 & 0x1; + pDst->tsid = tmp19__ >> 1 & 0xf; + pDst->direction = tmp19__ >> 5 & 0x3; + pDst->reserved = tmp19__ >> 7 & 0x1ff; framesntohl(pCtx, &pDst->service_start_time, pBuf, 0); pBuf += 4; ielen -= (uint8_t)4; @@ -2048,34 +2157,34 @@ uint32_t dot11f_unpack_ie_tspec(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp18__; - uint8_t tmp19__; uint16_t tmp20__; + uint8_t tmp21__; + uint16_t tmp22__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp18__, pBuf, 0); - pBuf += 2; - ielen -= 2; - pDst->traffic_type = tmp18__ >> 0 & 0x1; - pDst->tsid = tmp18__ >> 1 & 0xf; - pDst->direction = tmp18__ >> 5 & 0x3; - pDst->access_policy = tmp18__ >> 7 & 0x3; - pDst->aggregation = tmp18__ >> 9 & 0x1; - pDst->psb = tmp18__ >> 10 & 0x1; - pDst->user_priority = tmp18__ >> 11 & 0x7; - pDst->tsinfo_ack_pol = tmp18__ >> 14 & 0x3; - tmp19__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->schedule = tmp19__ >> 0 & 0x1; - pDst->unused = tmp19__ >> 1 & 0x7f; framesntohs(pCtx, &tmp20__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->size = tmp20__ >> 0 & 0x7fff; - pDst->fixed = tmp20__ >> 15 & 0x1; + pDst->traffic_type = tmp20__ >> 0 & 0x1; + pDst->tsid = tmp20__ >> 1 & 0xf; + pDst->direction = tmp20__ >> 5 & 0x3; + pDst->access_policy = tmp20__ >> 7 & 0x3; + pDst->aggregation = tmp20__ >> 9 & 0x1; + pDst->psb = tmp20__ >> 10 & 0x1; + pDst->user_priority = tmp20__ >> 11 & 0x7; + pDst->tsinfo_ack_pol = tmp20__ >> 14 & 0x3; + tmp21__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->schedule = tmp21__ >> 0 & 0x1; + pDst->unused = tmp21__ >> 1 & 0x7f; + framesntohs(pCtx, &tmp22__, pBuf, 0); + pBuf += 2; + ielen -= 2; + pDst->size = tmp22__ >> 0 & 0x7fff; + pDst->fixed = tmp22__ >> 15 & 0x1; framesntohs(pCtx, &pDst->max_msdu_size, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; @@ -2130,50 +2239,50 @@ uint32_t dot11f_unpack_ie_vht_caps(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint32_t tmp21__; - uint16_t tmp22__; - uint16_t tmp23__; + uint32_t tmp23__; + uint16_t tmp24__; + uint16_t tmp25__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohl(pCtx, &tmp21__, pBuf, 0); + framesntohl(pCtx, &tmp23__, pBuf, 0); pBuf += 4; ielen -= 4; - pDst->maxMPDULen = tmp21__ >> 0 & 0x3; - pDst->supportedChannelWidthSet = tmp21__ >> 2 & 0x3; - pDst->ldpcCodingCap = tmp21__ >> 4 & 0x1; - pDst->shortGI80MHz = tmp21__ >> 5 & 0x1; - pDst->shortGI160and80plus80MHz = tmp21__ >> 6 & 0x1; - pDst->txSTBC = tmp21__ >> 7 & 0x1; - pDst->rxSTBC = tmp21__ >> 8 & 0x7; - pDst->suBeamFormerCap = tmp21__ >> 11 & 0x1; - pDst->suBeamformeeCap = tmp21__ >> 12 & 0x1; - pDst->csnofBeamformerAntSup = tmp21__ >> 13 & 0x7; - pDst->numSoundingDim = tmp21__ >> 16 & 0x7; - pDst->muBeamformerCap = tmp21__ >> 19 & 0x1; - pDst->muBeamformeeCap = tmp21__ >> 20 & 0x1; - pDst->vhtTXOPPS = tmp21__ >> 21 & 0x1; - pDst->htcVHTCap = tmp21__ >> 22 & 0x1; - pDst->maxAMPDULenExp = tmp21__ >> 23 & 0x7; - pDst->vhtLinkAdaptCap = tmp21__ >> 26 & 0x3; - pDst->rxAntPattern = tmp21__ >> 28 & 0x1; - pDst->txAntPattern = tmp21__ >> 29 & 0x1; - pDst->reserved1 = tmp21__ >> 30 & 0x3; + pDst->maxMPDULen = tmp23__ >> 0 & 0x3; + pDst->supportedChannelWidthSet = tmp23__ >> 2 & 0x3; + pDst->ldpcCodingCap = tmp23__ >> 4 & 0x1; + pDst->shortGI80MHz = tmp23__ >> 5 & 0x1; + pDst->shortGI160and80plus80MHz = tmp23__ >> 6 & 0x1; + pDst->txSTBC = tmp23__ >> 7 & 0x1; + pDst->rxSTBC = tmp23__ >> 8 & 0x7; + pDst->suBeamFormerCap = tmp23__ >> 11 & 0x1; + pDst->suBeamformeeCap = tmp23__ >> 12 & 0x1; + pDst->csnofBeamformerAntSup = tmp23__ >> 13 & 0x7; + pDst->numSoundingDim = tmp23__ >> 16 & 0x7; + pDst->muBeamformerCap = tmp23__ >> 19 & 0x1; + pDst->muBeamformeeCap = tmp23__ >> 20 & 0x1; + pDst->vhtTXOPPS = tmp23__ >> 21 & 0x1; + pDst->htcVHTCap = tmp23__ >> 22 & 0x1; + pDst->maxAMPDULenExp = tmp23__ >> 23 & 0x7; + pDst->vhtLinkAdaptCap = tmp23__ >> 26 & 0x3; + pDst->rxAntPattern = tmp23__ >> 28 & 0x1; + pDst->txAntPattern = tmp23__ >> 29 & 0x1; + pDst->reserved1 = tmp23__ >> 30 & 0x3; framesntohs(pCtx, &pDst->rxMCSMap, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; - framesntohs(pCtx, &tmp22__, pBuf, 0); + framesntohs(pCtx, &tmp24__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->rxHighSupDataRate = tmp22__ >> 0 & 0x1fff; - pDst->reserved2 = tmp22__ >> 13 & 0x7; + pDst->rxHighSupDataRate = tmp24__ >> 0 & 0x1fff; + pDst->reserved2 = tmp24__ >> 13 & 0x7; framesntohs(pCtx, &pDst->txMCSMap, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; - framesntohs(pCtx, &tmp23__, pBuf, 0); - pDst->txSupDataRate = tmp23__ >> 0 & 0x1fff; - pDst->reserved3 = tmp23__ >> 13 & 0x7; + framesntohs(pCtx, &tmp25__, pBuf, 0); + pDst->txSupDataRate = tmp25__ >> 0 & 0x1fff; + pDst->reserved3 = tmp25__ >> 13 & 0x7; (void)pCtx; return status; } /* End dot11f_unpack_ie_vht_caps. */ @@ -2216,7 +2325,7 @@ uint32_t dot11f_unpack_ie_wmm_schedule(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp24__; + uint16_t tmp26__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -2228,13 +2337,13 @@ uint32_t dot11f_unpack_ie_wmm_schedule(tpAniSirGlobal pCtx, pDst->present = 0; return status | DOT11F_BAD_FIXED_VALUE; } - framesntohs(pCtx, &tmp24__, pBuf, 0); + framesntohs(pCtx, &tmp26__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->aggregation = tmp24__ >> 0 & 0x1; - pDst->tsid = tmp24__ >> 1 & 0xf; - pDst->direction = tmp24__ >> 5 & 0x3; - pDst->reserved = tmp24__ >> 7 & 0x1ff; + pDst->aggregation = tmp26__ >> 0 & 0x1; + pDst->tsid = tmp26__ >> 1 & 0xf; + pDst->direction = tmp26__ >> 5 & 0x3; + pDst->reserved = tmp26__ >> 7 & 0x1ff; framesntohl(pCtx, &pDst->service_start_time, pBuf, 0); pBuf += 4; ielen -= (uint8_t)4; @@ -2410,9 +2519,9 @@ uint32_t dot11f_unpack_ie_wmmtspec(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp25__; - uint8_t tmp26__; uint16_t tmp27__; + uint8_t tmp28__; + uint16_t tmp29__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -2424,27 +2533,27 @@ uint32_t dot11f_unpack_ie_wmmtspec(tpAniSirGlobal pCtx, pDst->present = 0; return status | DOT11F_BAD_FIXED_VALUE; } - framesntohs(pCtx, &tmp25__, pBuf, 0); - pBuf += 2; - ielen -= 2; - pDst->traffic_type = tmp25__ >> 0 & 0x1; - pDst->tsid = tmp25__ >> 1 & 0xf; - pDst->direction = tmp25__ >> 5 & 0x3; - pDst->access_policy = tmp25__ >> 7 & 0x3; - pDst->aggregation = tmp25__ >> 9 & 0x1; - pDst->psb = tmp25__ >> 10 & 0x1; - pDst->user_priority = tmp25__ >> 11 & 0x7; - pDst->tsinfo_ack_pol = tmp25__ >> 14 & 0x3; - tmp26__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->tsinfo_rsvd = tmp26__ >> 0 & 0x7f; - pDst->burst_size_defn = tmp26__ >> 7 & 0x1; framesntohs(pCtx, &tmp27__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->size = tmp27__ >> 0 & 0x7fff; - pDst->fixed = tmp27__ >> 15 & 0x1; + pDst->traffic_type = tmp27__ >> 0 & 0x1; + pDst->tsid = tmp27__ >> 1 & 0xf; + pDst->direction = tmp27__ >> 5 & 0x3; + pDst->access_policy = tmp27__ >> 7 & 0x3; + pDst->aggregation = tmp27__ >> 9 & 0x1; + pDst->psb = tmp27__ >> 10 & 0x1; + pDst->user_priority = tmp27__ >> 11 & 0x7; + pDst->tsinfo_ack_pol = tmp27__ >> 14 & 0x3; + tmp28__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->tsinfo_rsvd = tmp28__ >> 0 & 0x7f; + pDst->burst_size_defn = tmp28__ >> 7 & 0x1; + framesntohs(pCtx, &tmp29__, pBuf, 0); + pBuf += 2; + ielen -= 2; + pDst->size = tmp29__ >> 0 & 0x7fff; + pDst->fixed = tmp29__ >> 15 & 0x1; framesntohs(pCtx, &pDst->max_msdu_size, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; @@ -2589,8 +2698,8 @@ uint32_t dot11f_unpack_ie_neighbor_rpt(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp28__; - uint8_t tmp29__; + uint8_t tmp30__; + uint8_t tmp31__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -2598,23 +2707,23 @@ uint32_t dot11f_unpack_ie_neighbor_rpt(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pDst->bssid, pBuf, 6); pBuf += 6; ielen -= (uint8_t)6; - tmp28__ = *pBuf; + tmp30__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->APReachability = tmp28__ >> 0 & 0x3; - pDst->Security = tmp28__ >> 2 & 0x1; - pDst->KeyScope = tmp28__ >> 3 & 0x1; - pDst->SpecMgmtCap = tmp28__ >> 4 & 0x1; - pDst->QosCap = tmp28__ >> 5 & 0x1; - pDst->apsd = tmp28__ >> 6 & 0x1; - pDst->rrm = tmp28__ >> 7 & 0x1; - tmp29__ = *pBuf; + pDst->APReachability = tmp30__ >> 0 & 0x3; + pDst->Security = tmp30__ >> 2 & 0x1; + pDst->KeyScope = tmp30__ >> 3 & 0x1; + pDst->SpecMgmtCap = tmp30__ >> 4 & 0x1; + pDst->QosCap = tmp30__ >> 5 & 0x1; + pDst->apsd = tmp30__ >> 6 & 0x1; + pDst->rrm = tmp30__ >> 7 & 0x1; + tmp31__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->DelayedBA = tmp29__ >> 0 & 0x1; - pDst->ImmBA = tmp29__ >> 1 & 0x1; - pDst->MobilityDomain = tmp29__ >> 2 & 0x1; - pDst->reserved = tmp29__ >> 3 & 0x1f; + pDst->DelayedBA = tmp31__ >> 0 & 0x1; + pDst->ImmBA = tmp31__ >> 1 & 0x1; + pDst->MobilityDomain = tmp31__ >> 2 & 0x1; + pDst->reserved = tmp31__ >> 3 & 0x1f; framesntohs(pCtx, &pDst->reserved1, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; @@ -2912,14 +3021,14 @@ uint32_t dot11f_unpack_ie_edca_param_set(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp30__; - uint8_t tmp31__; uint8_t tmp32__; uint8_t tmp33__; uint8_t tmp34__; uint8_t tmp35__; uint8_t tmp36__; uint8_t tmp37__; + uint8_t tmp38__; + uint8_t tmp39__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -2930,63 +3039,63 @@ uint32_t dot11f_unpack_ie_edca_param_set(tpAniSirGlobal pCtx, pDst->reserved = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp30__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_aifsn = tmp30__ >> 0 & 0xf; - pDst->acbe_acm = tmp30__ >> 4 & 0x1; - pDst->acbe_aci = tmp30__ >> 5 & 0x3; - pDst->unused1 = tmp30__ >> 7 & 0x1; - tmp31__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_acwmin = tmp31__ >> 0 & 0xf; - pDst->acbe_acwmax = tmp31__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acbe_txoplimit, pBuf, 0); - pBuf += 2; - ielen -= (uint8_t)2; tmp32__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_aifsn = tmp32__ >> 0 & 0xf; - pDst->acbk_acm = tmp32__ >> 4 & 0x1; - pDst->acbk_aci = tmp32__ >> 5 & 0x3; - pDst->unused2 = tmp32__ >> 7 & 0x1; + pDst->acbe_aifsn = tmp32__ >> 0 & 0xf; + pDst->acbe_acm = tmp32__ >> 4 & 0x1; + pDst->acbe_aci = tmp32__ >> 5 & 0x3; + pDst->unused1 = tmp32__ >> 7 & 0x1; tmp33__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_acwmin = tmp33__ >> 0 & 0xf; - pDst->acbk_acwmax = tmp33__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acbk_txoplimit, pBuf, 0); + pDst->acbe_acwmin = tmp33__ >> 0 & 0xf; + pDst->acbe_acwmax = tmp33__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acbe_txoplimit, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; tmp34__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_aifsn = tmp34__ >> 0 & 0xf; - pDst->acvi_acm = tmp34__ >> 4 & 0x1; - pDst->acvi_aci = tmp34__ >> 5 & 0x3; - pDst->unused3 = tmp34__ >> 7 & 0x1; + pDst->acbk_aifsn = tmp34__ >> 0 & 0xf; + pDst->acbk_acm = tmp34__ >> 4 & 0x1; + pDst->acbk_aci = tmp34__ >> 5 & 0x3; + pDst->unused2 = tmp34__ >> 7 & 0x1; tmp35__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_acwmin = tmp35__ >> 0 & 0xf; - pDst->acvi_acwmax = tmp35__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acvi_txoplimit, pBuf, 0); + pDst->acbk_acwmin = tmp35__ >> 0 & 0xf; + pDst->acbk_acwmax = tmp35__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acbk_txoplimit, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; tmp36__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_aifsn = tmp36__ >> 0 & 0xf; - pDst->acvo_acm = tmp36__ >> 4 & 0x1; - pDst->acvo_aci = tmp36__ >> 5 & 0x3; - pDst->unused4 = tmp36__ >> 7 & 0x1; + pDst->acvi_aifsn = tmp36__ >> 0 & 0xf; + pDst->acvi_acm = tmp36__ >> 4 & 0x1; + pDst->acvi_aci = tmp36__ >> 5 & 0x3; + pDst->unused3 = tmp36__ >> 7 & 0x1; tmp37__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_acwmin = tmp37__ >> 0 & 0xf; - pDst->acvo_acwmax = tmp37__ >> 4 & 0xf; + pDst->acvi_acwmin = tmp37__ >> 0 & 0xf; + pDst->acvi_acwmax = tmp37__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acvi_txoplimit, pBuf, 0); + pBuf += 2; + ielen -= (uint8_t)2; + tmp38__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_aifsn = tmp38__ >> 0 & 0xf; + pDst->acvo_acm = tmp38__ >> 4 & 0x1; + pDst->acvo_aci = tmp38__ >> 5 & 0x3; + pDst->unused4 = tmp38__ >> 7 & 0x1; + tmp39__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_acwmin = tmp39__ >> 0 & 0xf; + pDst->acvo_acwmax = tmp39__ >> 4 & 0xf; framesntohs(pCtx, &pDst->acvo_txoplimit, pBuf, 0); (void)pCtx; return status; @@ -3002,16 +3111,16 @@ uint32_t dot11f_unpack_ie_erp_info(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp38__; + uint8_t tmp40__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp38__ = *pBuf; - pDst->non_erp_present = tmp38__ >> 0 & 0x1; - pDst->use_prot = tmp38__ >> 1 & 0x1; - pDst->barker_preamble = tmp38__ >> 2 & 0x1; - pDst->unused = tmp38__ >> 3 & 0x1f; + tmp40__ = *pBuf; + pDst->non_erp_present = tmp40__ >> 0 & 0x1; + pDst->use_prot = tmp40__ >> 1 & 0x1; + pDst->barker_preamble = tmp40__ >> 2 & 0x1; + pDst->unused = tmp40__ >> 3 & 0x1f; (void)pCtx; return status; } /* End dot11f_unpack_ie_erp_info. */ @@ -3051,7 +3160,7 @@ uint32_t dot11f_unpack_ie_ese_rad_mgmt_cap(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp39__; + uint8_t tmp41__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -3059,9 +3168,9 @@ uint32_t dot11f_unpack_ie_ese_rad_mgmt_cap(tpAniSirGlobal pCtx, pDst->mgmt_state = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp39__ = *pBuf; - pDst->mbssid_mask = tmp39__ >> 0 & 0x7; - pDst->reserved = tmp39__ >> 3 & 0x1f; + tmp41__ = *pBuf; + pDst->mbssid_mask = tmp41__ >> 0 & 0x7; + pDst->reserved = tmp41__ >> 3 & 0x1f; (void)pCtx; return status; } /* End dot11f_unpack_ie_ese_rad_mgmt_cap. */ @@ -3339,16 +3448,16 @@ uint32_t dot11f_unpack_ie_ft_info(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp40__; + uint16_t tmp42__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp40__, pBuf, 0); + framesntohs(pCtx, &tmp42__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->reserved = tmp40__ >> 0 & 0xff; - pDst->IECount = tmp40__ >> 8 & 0xff; + pDst->reserved = tmp42__ >> 0 & 0xff; + pDst->IECount = tmp42__ >> 8 & 0xff; DOT11F_MEMCPY(pCtx, pDst->MIC, pBuf, 16); pBuf += 16; ielen -= (uint8_t)16; @@ -3380,79 +3489,79 @@ uint32_t dot11f_unpack_ie_ht_caps(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp41__; - uint8_t tmp42__; uint16_t tmp43__; - uint32_t tmp44__; - uint8_t tmp45__; + uint8_t tmp44__; + uint16_t tmp45__; + uint32_t tmp46__; + uint8_t tmp47__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp41__, pBuf, 0); - pBuf += 2; - ielen -= 2; - pDst->advCodingCap = tmp41__ >> 0 & 0x1; - pDst->supportedChannelWidthSet = tmp41__ >> 1 & 0x1; - pDst->mimoPowerSave = tmp41__ >> 2 & 0x3; - pDst->greenField = tmp41__ >> 4 & 0x1; - pDst->shortGI20MHz = tmp41__ >> 5 & 0x1; - pDst->shortGI40MHz = tmp41__ >> 6 & 0x1; - pDst->txSTBC = tmp41__ >> 7 & 0x1; - pDst->rxSTBC = tmp41__ >> 8 & 0x3; - pDst->delayedBA = tmp41__ >> 10 & 0x1; - pDst->maximalAMSDUsize = tmp41__ >> 11 & 0x1; - pDst->dsssCckMode40MHz = tmp41__ >> 12 & 0x1; - pDst->psmp = tmp41__ >> 13 & 0x1; - pDst->stbcControlFrame = tmp41__ >> 14 & 0x1; - pDst->lsigTXOPProtection = tmp41__ >> 15 & 0x1; - tmp42__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->maxRxAMPDUFactor = tmp42__ >> 0 & 0x3; - pDst->mpduDensity = tmp42__ >> 2 & 0x7; - pDst->reserved1 = tmp42__ >> 5 & 0x7; - DOT11F_MEMCPY(pCtx, pDst->supportedMCSSet, pBuf, 16); - pBuf += 16; - ielen -= (uint8_t)16; framesntohs(pCtx, &tmp43__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->pco = tmp43__ >> 0 & 0x1; - pDst->transitionTime = tmp43__ >> 1 & 0x3; - pDst->reserved2 = tmp43__ >> 3 & 0x1f; - pDst->mcsFeedback = tmp43__ >> 8 & 0x3; - pDst->reserved3 = tmp43__ >> 10 & 0x3f; - framesntohl(pCtx, &tmp44__, pBuf, 0); - pBuf += 4; - ielen -= 4; - pDst->txBF = tmp44__ >> 0 & 0x1; - pDst->rxStaggeredSounding = tmp44__ >> 1 & 0x1; - pDst->txStaggeredSounding = tmp44__ >> 2 & 0x1; - pDst->rxZLF = tmp44__ >> 3 & 0x1; - pDst->txZLF = tmp44__ >> 4 & 0x1; - pDst->implicitTxBF = tmp44__ >> 5 & 0x1; - pDst->calibration = tmp44__ >> 6 & 0x3; - pDst->explicitCSITxBF = tmp44__ >> 8 & 0x1; - pDst->explicitUncompressedSteeringMatrix = tmp44__ >> 9 & 0x1; - pDst->explicitBFCSIFeedback = tmp44__ >> 10 & 0x7; - pDst->explicitUncompressedSteeringMatrixFeedback = tmp44__ >> 13 & 0x7; - pDst->explicitCompressedSteeringMatrixFeedback = tmp44__ >> 16 & 0x7; - pDst->csiNumBFAntennae = tmp44__ >> 19 & 0x3; - pDst->uncompressedSteeringMatrixBFAntennae = tmp44__ >> 21 & 0x3; - pDst->compressedSteeringMatrixBFAntennae = tmp44__ >> 23 & 0x3; - pDst->reserved4 = tmp44__ >> 25 & 0x7f; - tmp45__ = *pBuf; + pDst->advCodingCap = tmp43__ >> 0 & 0x1; + pDst->supportedChannelWidthSet = tmp43__ >> 1 & 0x1; + pDst->mimoPowerSave = tmp43__ >> 2 & 0x3; + pDst->greenField = tmp43__ >> 4 & 0x1; + pDst->shortGI20MHz = tmp43__ >> 5 & 0x1; + pDst->shortGI40MHz = tmp43__ >> 6 & 0x1; + pDst->txSTBC = tmp43__ >> 7 & 0x1; + pDst->rxSTBC = tmp43__ >> 8 & 0x3; + pDst->delayedBA = tmp43__ >> 10 & 0x1; + pDst->maximalAMSDUsize = tmp43__ >> 11 & 0x1; + pDst->dsssCckMode40MHz = tmp43__ >> 12 & 0x1; + pDst->psmp = tmp43__ >> 13 & 0x1; + pDst->stbcControlFrame = tmp43__ >> 14 & 0x1; + pDst->lsigTXOPProtection = tmp43__ >> 15 & 0x1; + tmp44__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->antennaSelection = tmp45__ >> 0 & 0x1; - pDst->explicitCSIFeedbackTx = tmp45__ >> 1 & 0x1; - pDst->antennaIndicesFeedbackTx = tmp45__ >> 2 & 0x1; - pDst->explicitCSIFeedback = tmp45__ >> 3 & 0x1; - pDst->antennaIndicesFeedback = tmp45__ >> 4 & 0x1; - pDst->rxAS = tmp45__ >> 5 & 0x1; - pDst->txSoundingPPDUs = tmp45__ >> 6 & 0x1; - pDst->reserved5 = tmp45__ >> 7 & 0x1; + pDst->maxRxAMPDUFactor = tmp44__ >> 0 & 0x3; + pDst->mpduDensity = tmp44__ >> 2 & 0x7; + pDst->reserved1 = tmp44__ >> 5 & 0x7; + DOT11F_MEMCPY(pCtx, pDst->supportedMCSSet, pBuf, 16); + pBuf += 16; + ielen -= (uint8_t)16; + framesntohs(pCtx, &tmp45__, pBuf, 0); + pBuf += 2; + ielen -= 2; + pDst->pco = tmp45__ >> 0 & 0x1; + pDst->transitionTime = tmp45__ >> 1 & 0x3; + pDst->reserved2 = tmp45__ >> 3 & 0x1f; + pDst->mcsFeedback = tmp45__ >> 8 & 0x3; + pDst->reserved3 = tmp45__ >> 10 & 0x3f; + framesntohl(pCtx, &tmp46__, pBuf, 0); + pBuf += 4; + ielen -= 4; + pDst->txBF = tmp46__ >> 0 & 0x1; + pDst->rxStaggeredSounding = tmp46__ >> 1 & 0x1; + pDst->txStaggeredSounding = tmp46__ >> 2 & 0x1; + pDst->rxZLF = tmp46__ >> 3 & 0x1; + pDst->txZLF = tmp46__ >> 4 & 0x1; + pDst->implicitTxBF = tmp46__ >> 5 & 0x1; + pDst->calibration = tmp46__ >> 6 & 0x3; + pDst->explicitCSITxBF = tmp46__ >> 8 & 0x1; + pDst->explicitUncompressedSteeringMatrix = tmp46__ >> 9 & 0x1; + pDst->explicitBFCSIFeedback = tmp46__ >> 10 & 0x7; + pDst->explicitUncompressedSteeringMatrixFeedback = tmp46__ >> 13 & 0x7; + pDst->explicitCompressedSteeringMatrixFeedback = tmp46__ >> 16 & 0x7; + pDst->csiNumBFAntennae = tmp46__ >> 19 & 0x3; + pDst->uncompressedSteeringMatrixBFAntennae = tmp46__ >> 21 & 0x3; + pDst->compressedSteeringMatrixBFAntennae = tmp46__ >> 23 & 0x3; + pDst->reserved4 = tmp46__ >> 25 & 0x7f; + tmp47__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->antennaSelection = tmp47__ >> 0 & 0x1; + pDst->explicitCSIFeedbackTx = tmp47__ >> 1 & 0x1; + pDst->antennaIndicesFeedbackTx = tmp47__ >> 2 & 0x1; + pDst->explicitCSIFeedback = tmp47__ >> 3 & 0x1; + pDst->antennaIndicesFeedback = tmp47__ >> 4 & 0x1; + pDst->rxAS = tmp47__ >> 5 & 0x1; + pDst->txSoundingPPDUs = tmp47__ >> 6 & 0x1; + pDst->reserved5 = tmp47__ >> 7 & 0x1; pDst->num_rsvd = (uint8_t)(ielen); if (ielen > 32) { pDst->present = 0; @@ -3474,9 +3583,9 @@ uint32_t dot11f_unpack_ie_ht_info(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp46__; - uint16_t tmp47__; - uint16_t tmp48__; + uint8_t tmp48__; + uint16_t tmp49__; + uint16_t tmp50__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -3484,32 +3593,32 @@ uint32_t dot11f_unpack_ie_ht_info(tpAniSirGlobal pCtx, pDst->primaryChannel = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp46__ = *pBuf; + tmp48__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->secondaryChannelOffset = tmp46__ >> 0 & 0x3; - pDst->recommendedTxWidthSet = tmp46__ >> 2 & 0x1; - pDst->rifsMode = tmp46__ >> 3 & 0x1; - pDst->controlledAccessOnly = tmp46__ >> 4 & 0x1; - pDst->serviceIntervalGranularity = tmp46__ >> 5 & 0x7; - framesntohs(pCtx, &tmp47__, pBuf, 0); + pDst->secondaryChannelOffset = tmp48__ >> 0 & 0x3; + pDst->recommendedTxWidthSet = tmp48__ >> 2 & 0x1; + pDst->rifsMode = tmp48__ >> 3 & 0x1; + pDst->controlledAccessOnly = tmp48__ >> 4 & 0x1; + pDst->serviceIntervalGranularity = tmp48__ >> 5 & 0x7; + framesntohs(pCtx, &tmp49__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->opMode = tmp47__ >> 0 & 0x3; - pDst->nonGFDevicesPresent = tmp47__ >> 2 & 0x1; - pDst->transmitBurstLimit = tmp47__ >> 3 & 0x1; - pDst->obssNonHTStaPresent = tmp47__ >> 4 & 0x1; - pDst->reserved = tmp47__ >> 5 & 0x7ff; - framesntohs(pCtx, &tmp48__, pBuf, 0); + pDst->opMode = tmp49__ >> 0 & 0x3; + pDst->nonGFDevicesPresent = tmp49__ >> 2 & 0x1; + pDst->transmitBurstLimit = tmp49__ >> 3 & 0x1; + pDst->obssNonHTStaPresent = tmp49__ >> 4 & 0x1; + pDst->reserved = tmp49__ >> 5 & 0x7ff; + framesntohs(pCtx, &tmp50__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->basicSTBCMCS = tmp48__ >> 0 & 0x7f; - pDst->dualCTSProtection = tmp48__ >> 7 & 0x1; - pDst->secondaryBeacon = tmp48__ >> 8 & 0x1; - pDst->lsigTXOPProtectionFullSupport = tmp48__ >> 9 & 0x1; - pDst->pcoActive = tmp48__ >> 10 & 0x1; - pDst->pcoPhase = tmp48__ >> 11 & 0x1; - pDst->reserved2 = tmp48__ >> 12 & 0xf; + pDst->basicSTBCMCS = tmp50__ >> 0 & 0x7f; + pDst->dualCTSProtection = tmp50__ >> 7 & 0x1; + pDst->secondaryBeacon = tmp50__ >> 8 & 0x1; + pDst->lsigTXOPProtectionFullSupport = tmp50__ >> 9 & 0x1; + pDst->pcoActive = tmp50__ >> 10 & 0x1; + pDst->pcoPhase = tmp50__ >> 11 & 0x1; + pDst->reserved2 = tmp50__ >> 12 & 0xf; DOT11F_MEMCPY(pCtx, pDst->basicMCSSet, pBuf, 16); pBuf += 16; ielen -= (uint8_t)16; @@ -3571,6 +3680,51 @@ uint32_t dot11f_unpack_ie_link_identifier(tpAniSirGlobal pCtx, #define SigIeLinkIdentifier (0x003f) +static const tTLVDefn TLVS_MBO_IE[] = { + { offsetof(tDot11fIEMBO_IE, mbo_ap_cap), offsetof(tDot11fTLVmbo_ap_cap, + present), "mbo_ap_cap", SigTlvmbo_ap_cap, DOT11F_TLV_MBO_AP_CAP, + 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, non_prefferd_chan_rep), + offsetof(tDot11fTLVnon_prefferd_chan_rep, present), + "non_prefferd_chan_rep", SigTlvnon_prefferd_chan_rep, + DOT11F_TLV_NON_PREFFERD_CHAN_REP, 0, 6, 257, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, cellular_data_cap), + offsetof(tDot11fTLVcellular_data_cap, present), "cellular_data_cap", + SigTlvcellular_data_cap, DOT11F_TLV_CELLULAR_DATA_CAP, + 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, assoc_disallowed), + offsetof(tDot11fTLVassoc_disallowed, present), "assoc_disallowed", + SigTlvassoc_disallowed, DOT11F_TLV_ASSOC_DISALLOWED, + 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, cellular_data_con_pref), + offsetof(tDot11fTLVcellular_data_con_pref, present), + "cellular_data_con_pref", SigTlvcellular_data_con_pref, + DOT11F_TLV_CELLULAR_DATA_CON_PREF, 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, transition_reason), + offsetof(tDot11fTLVtransition_reason, present), "transition_reason", + SigTlvtransition_reason, DOT11F_TLV_TRANSITION_REASON, + 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, transition_reject_reason), + offsetof(tDot11fTLVtransition_reject_reason, present), + "transition_reject_reason", SigTlvtransition_reject_reason, + DOT11F_TLV_TRANSITION_REJECT_REASON, 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, assoc_retry_delay), + offsetof(tDot11fTLVassoc_retry_delay, present), "assoc_retry_delay", + SigTlvassoc_retry_delay, DOT11F_TLV_ASSOC_RETRY_DELAY, + 0, 4, 4, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, oce_cap), offsetof(tDot11fTLVoce_cap, + present), "oce_cap", SigTlvoce_cap, DOT11F_TLV_OCE_CAP, + 0, 3, 3, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, rssi_assoc_rej), + offsetof(tDot11fTLVrssi_assoc_rej, present), "rssi_assoc_rej", + SigTlvrssi_assoc_rej, DOT11F_TLV_RSSI_ASSOC_REJ, 0, 4, 4, 0, 1, 1, 0, }, + { offsetof(tDot11fIEMBO_IE, reduced_wan_metrics), + offsetof(tDot11fTLVreduced_wan_metrics, present), "reduced_wan_metrics", + SigTlvreduced_wan_metrics, DOT11F_TLV_REDUCED_WAN_METRICS, + 0, 3, 3, 0, 1, 1, 0, }, + {0, 0, NULL, 0, 0xffff, 0, 0, 0, 0, 0, 0}, +}; + uint32_t dot11f_unpack_ie_MBO_IE(tpAniSirGlobal pCtx, uint8_t *pBuf, uint8_t ielen, @@ -3578,21 +3732,11 @@ uint32_t dot11f_unpack_ie_MBO_IE(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - (void) pBuf; (void)ielen; /* Shutup the compiler */ - if (pDst->present) - status = DOT11F_DUPLICATE_IE; + (void)pBuf; (void)ielen; /* Shutup the compiler */ pDst->present = 1; - DOT11F_MEMCPY(pCtx, pDst->mbo_cap, pBuf, 3); - pBuf += 3; - ielen -= (uint8_t)3; - pDst->num_assoc_disallowed = (uint8_t)(ielen); - if (ielen > 3) { - pDst->present = 0; - return DOT11F_SKIPPED_BAD_IE; - } - - DOT11F_MEMCPY(pCtx, pDst->assoc_disallowed, pBuf, (ielen)); - (void)pCtx; + status = unpack_tlv_core(pCtx, pBuf, ielen, + TLVS_MBO_IE, + (uint8_t *)pDst, sizeof(*pDst)); return status; } /* End dot11f_unpack_ie_MBO_IE. */ @@ -3619,9 +3763,9 @@ uint32_t dot11f_unpack_ie_measurement_report(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp49__; - uint8_t tmp50__; uint8_t tmp51__; + uint8_t tmp52__; + uint8_t tmp53__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -3629,13 +3773,13 @@ uint32_t dot11f_unpack_ie_measurement_report(tpAniSirGlobal pCtx, pDst->token = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp49__ = *pBuf; + tmp51__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->late = tmp49__ >> 0 & 0x1; - pDst->incapable = tmp49__ >> 1 & 0x1; - pDst->refused = tmp49__ >> 2 & 0x1; - pDst->unused = tmp49__ >> 3 & 0x1f; + pDst->late = tmp51__ >> 0 & 0x1; + pDst->incapable = tmp51__ >> 1 & 0x1; + pDst->refused = tmp51__ >> 2 & 0x1; + pDst->unused = tmp51__ >> 3 & 0x1f; pDst->type = *pBuf; pBuf += 1; ielen -= (uint8_t)1; @@ -3653,15 +3797,15 @@ uint32_t dot11f_unpack_ie_measurement_report(tpAniSirGlobal pCtx, framesntohs(pCtx, &pDst->report.Basic.meas_duration, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; - tmp50__ = *pBuf; + tmp52__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->report.Basic.bss = tmp50__ >> 0 & 0x1; - pDst->report.Basic.ofdm_preamble = tmp50__ >> 1 & 0x1; - pDst->report.Basic.unid_signal = tmp50__ >> 2 & 0x1; - pDst->report.Basic.rader = tmp50__ >> 3 & 0x1; - pDst->report.Basic.unmeasured = tmp50__ >> 4 & 0x1; - pDst->report.Basic.unused = tmp50__ >> 5 & 0x7; + pDst->report.Basic.bss = tmp52__ >> 0 & 0x1; + pDst->report.Basic.ofdm_preamble = tmp52__ >> 1 & 0x1; + pDst->report.Basic.unid_signal = tmp52__ >> 2 & 0x1; + pDst->report.Basic.rader = tmp52__ >> 3 & 0x1; + pDst->report.Basic.unmeasured = tmp52__ >> 4 & 0x1; + pDst->report.Basic.unused = tmp52__ >> 5 & 0x7; break; case 1: pDst->report.CCA.channel = *pBuf; @@ -3725,11 +3869,11 @@ uint32_t dot11f_unpack_ie_measurement_report(tpAniSirGlobal pCtx, framesntohs(pCtx, &pDst->report.Beacon.meas_duration, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; - tmp51__ = *pBuf; + tmp53__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->report.Beacon.condensed_PHY = tmp51__ >> 0 & 0x7f; - pDst->report.Beacon.reported_frame_type = tmp51__ >> 7 & 0x1; + pDst->report.Beacon.condensed_PHY = tmp53__ >> 0 & 0x7f; + pDst->report.Beacon.reported_frame_type = tmp53__ >> 7 & 0x1; pDst->report.Beacon.RCPI = *pBuf; pBuf += 1; ielen -= (uint8_t)1; @@ -3839,7 +3983,7 @@ uint32_t dot11f_unpack_ie_measurement_request(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp52__; + uint8_t tmp54__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -3847,15 +3991,15 @@ uint32_t dot11f_unpack_ie_measurement_request(tpAniSirGlobal pCtx, pDst->measurement_token = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp52__ = *pBuf; + tmp54__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->parallel = tmp52__ >> 0 & 0x1; - pDst->enable = tmp52__ >> 1 & 0x1; - pDst->request = tmp52__ >> 2 & 0x1; - pDst->report = tmp52__ >> 3 & 0x1; - pDst->durationMandatory = tmp52__ >> 4 & 0x1; - pDst->unused = tmp52__ >> 5 & 0x7; + pDst->parallel = tmp54__ >> 0 & 0x1; + pDst->enable = tmp54__ >> 1 & 0x1; + pDst->request = tmp54__ >> 2 & 0x1; + pDst->report = tmp54__ >> 3 & 0x1; + pDst->durationMandatory = tmp54__ >> 4 & 0x1; + pDst->unused = tmp54__ >> 5 & 0x7; pDst->measurement_type = *pBuf; pBuf += 1; ielen -= (uint8_t)1; @@ -3962,7 +4106,7 @@ uint32_t dot11f_unpack_ie_mobility_domain(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp53__; + uint8_t tmp55__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -3970,10 +4114,10 @@ uint32_t dot11f_unpack_ie_mobility_domain(tpAniSirGlobal pCtx, framesntohs(pCtx, &pDst->MDID, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; - tmp53__ = *pBuf; - pDst->overDSCap = tmp53__ >> 0 & 0x1; - pDst->resourceReqCap = tmp53__ >> 1 & 0x1; - pDst->reserved = tmp53__ >> 2 & 0x3f; + tmp55__ = *pBuf; + pDst->overDSCap = tmp55__ >> 0 & 0x1; + pDst->resourceReqCap = tmp55__ >> 1 & 0x1; + pDst->reserved = tmp55__ >> 2 & 0x3f; (void)pCtx; return status; } /* End dot11f_unpack_ie_mobility_domain. */ @@ -4015,8 +4159,8 @@ uint32_t dot11f_unpack_ie_neighbor_report(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp54__; - uint8_t tmp55__; + uint8_t tmp56__; + uint8_t tmp57__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -4024,23 +4168,23 @@ uint32_t dot11f_unpack_ie_neighbor_report(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pDst->bssid, pBuf, 6); pBuf += 6; ielen -= (uint8_t)6; - tmp54__ = *pBuf; + tmp56__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->APReachability = tmp54__ >> 0 & 0x3; - pDst->Security = tmp54__ >> 2 & 0x1; - pDst->KeyScope = tmp54__ >> 3 & 0x1; - pDst->SpecMgmtCap = tmp54__ >> 4 & 0x1; - pDst->QosCap = tmp54__ >> 5 & 0x1; - pDst->apsd = tmp54__ >> 6 & 0x1; - pDst->rrm = tmp54__ >> 7 & 0x1; - tmp55__ = *pBuf; + pDst->APReachability = tmp56__ >> 0 & 0x3; + pDst->Security = tmp56__ >> 2 & 0x1; + pDst->KeyScope = tmp56__ >> 3 & 0x1; + pDst->SpecMgmtCap = tmp56__ >> 4 & 0x1; + pDst->QosCap = tmp56__ >> 5 & 0x1; + pDst->apsd = tmp56__ >> 6 & 0x1; + pDst->rrm = tmp56__ >> 7 & 0x1; + tmp57__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->DelayedBA = tmp55__ >> 0 & 0x1; - pDst->ImmBA = tmp55__ >> 1 & 0x1; - pDst->MobilityDomain = tmp55__ >> 2 & 0x1; - pDst->reserved = tmp55__ >> 3 & 0x1f; + pDst->DelayedBA = tmp57__ >> 0 & 0x1; + pDst->ImmBA = tmp57__ >> 1 & 0x1; + pDst->MobilityDomain = tmp57__ >> 2 & 0x1; + pDst->reserved = tmp57__ >> 3 & 0x1f; framesntohs(pCtx, &pDst->reserved1, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; @@ -4112,16 +4256,16 @@ uint32_t dot11f_unpack_ie_operating_mode(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp56__; + uint8_t tmp58__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp56__ = *pBuf; - pDst->chanWidth = tmp56__ >> 0 & 0x3; - pDst->reserved = tmp56__ >> 2 & 0x3; - pDst->rxNSS = tmp56__ >> 4 & 0x7; - pDst->rxNSSType = tmp56__ >> 7 & 0x1; + tmp58__ = *pBuf; + pDst->chanWidth = tmp58__ >> 0 & 0x3; + pDst->reserved = tmp58__ >> 2 & 0x3; + pDst->rxNSS = tmp58__ >> 4 & 0x7; + pDst->rxNSSType = tmp58__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_operating_mode. */ @@ -4448,17 +4592,17 @@ uint32_t dot11f_unpack_ie_pu_buffer_status(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp57__; + uint8_t tmp59__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp57__ = *pBuf; - pDst->ac_bk_traffic_aval = tmp57__ >> 0 & 0x1; - pDst->ac_be_traffic_aval = tmp57__ >> 1 & 0x1; - pDst->ac_vi_traffic_aval = tmp57__ >> 2 & 0x1; - pDst->ac_vo_traffic_aval = tmp57__ >> 3 & 0x1; - pDst->reserved = tmp57__ >> 4 & 0xf; + tmp59__ = *pBuf; + pDst->ac_bk_traffic_aval = tmp59__ >> 0 & 0x1; + pDst->ac_be_traffic_aval = tmp59__ >> 1 & 0x1; + pDst->ac_vi_traffic_aval = tmp59__ >> 2 & 0x1; + pDst->ac_vo_traffic_aval = tmp59__ >> 3 & 0x1; + pDst->reserved = tmp59__ >> 4 & 0xf; (void)pCtx; return status; } /* End dot11f_unpack_ie_pu_buffer_status. */ @@ -4580,17 +4724,17 @@ uint32_t dot11f_unpack_ie_qos_caps_ap(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp58__; + uint8_t tmp60__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp58__ = *pBuf; - pDst->count = tmp58__ >> 0 & 0xf; - pDst->qack = tmp58__ >> 4 & 0x1; - pDst->qreq = tmp58__ >> 5 & 0x1; - pDst->txopreq = tmp58__ >> 6 & 0x1; - pDst->reserved = tmp58__ >> 7 & 0x1; + tmp60__ = *pBuf; + pDst->count = tmp60__ >> 0 & 0xf; + pDst->qack = tmp60__ >> 4 & 0x1; + pDst->qreq = tmp60__ >> 5 & 0x1; + pDst->txopreq = tmp60__ >> 6 & 0x1; + pDst->reserved = tmp60__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_qos_caps_ap. */ @@ -4605,19 +4749,19 @@ uint32_t dot11f_unpack_ie_qos_caps_station(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp59__; + uint8_t tmp61__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp59__ = *pBuf; - pDst->acvo_uapsd = tmp59__ >> 0 & 0x1; - pDst->acvi_uapsd = tmp59__ >> 1 & 0x1; - pDst->acbk_uapsd = tmp59__ >> 2 & 0x1; - pDst->acbe_uapsd = tmp59__ >> 3 & 0x1; - pDst->qack = tmp59__ >> 4 & 0x1; - pDst->max_sp_length = tmp59__ >> 5 & 0x3; - pDst->more_data_ack = tmp59__ >> 7 & 0x1; + tmp61__ = *pBuf; + pDst->acvo_uapsd = tmp61__ >> 0 & 0x1; + pDst->acvi_uapsd = tmp61__ >> 1 & 0x1; + pDst->acbk_uapsd = tmp61__ >> 2 & 0x1; + pDst->acbe_uapsd = tmp61__ >> 3 & 0x1; + pDst->qack = tmp61__ >> 4 & 0x1; + pDst->max_sp_length = tmp61__ >> 5 & 0x3; + pDst->more_data_ack = tmp61__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_qos_caps_station. */ @@ -5187,7 +5331,7 @@ uint32_t dot11f_unpack_ie_wapi(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp60__; + uint16_t tmp62__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -5224,11 +5368,11 @@ uint32_t dot11f_unpack_ie_wapi(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pDst->multicast_cipher_suite, pBuf, 4); pBuf += 4; ielen -= (uint8_t)4; - framesntohs(pCtx, &tmp60__, pBuf, 0); + framesntohs(pCtx, &tmp62__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->preauth = tmp60__ >> 0 & 0x1; - pDst->reserved = tmp60__ >> 1 & 0x7fff; + pDst->preauth = tmp62__ >> 0 & 0x1; + pDst->reserved = tmp62__ >> 1 & 0x7fff; if (!ielen) { pDst->bkid_count = 0U; return 0U; @@ -5329,7 +5473,7 @@ uint32_t dot11f_unpack_ie_wmm_caps(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp61__; + uint8_t tmp63__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -5341,12 +5485,12 @@ uint32_t dot11f_unpack_ie_wmm_caps(tpAniSirGlobal pCtx, pDst->present = 0; return status | DOT11F_BAD_FIXED_VALUE; } - tmp61__ = *pBuf; - pDst->reserved = tmp61__ >> 0 & 0xf; - pDst->qack = tmp61__ >> 4 & 0x1; - pDst->queue_request = tmp61__ >> 5 & 0x1; - pDst->txop_request = tmp61__ >> 6 & 0x1; - pDst->more_ack = tmp61__ >> 7 & 0x1; + tmp63__ = *pBuf; + pDst->reserved = tmp63__ >> 0 & 0xf; + pDst->qack = tmp63__ >> 4 & 0x1; + pDst->queue_request = tmp63__ >> 5 & 0x1; + pDst->txop_request = tmp63__ >> 6 & 0x1; + pDst->more_ack = tmp63__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_wmm_caps. */ @@ -5361,7 +5505,7 @@ uint32_t dot11f_unpack_ie_wmm_info_ap(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp62__; + uint8_t tmp64__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -5369,10 +5513,10 @@ uint32_t dot11f_unpack_ie_wmm_info_ap(tpAniSirGlobal pCtx, pDst->version = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp62__ = *pBuf; - pDst->param_set_count = tmp62__ >> 0 & 0xf; - pDst->reserved = tmp62__ >> 4 & 0x7; - pDst->uapsd = tmp62__ >> 7 & 0x1; + tmp64__ = *pBuf; + pDst->param_set_count = tmp64__ >> 0 & 0xf; + pDst->reserved = tmp64__ >> 4 & 0x7; + pDst->uapsd = tmp64__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_wmm_info_ap. */ @@ -5387,7 +5531,7 @@ uint32_t dot11f_unpack_ie_wmm_info_station(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp63__; + uint8_t tmp65__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -5395,14 +5539,14 @@ uint32_t dot11f_unpack_ie_wmm_info_station(tpAniSirGlobal pCtx, pDst->version = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp63__ = *pBuf; - pDst->acvo_uapsd = tmp63__ >> 0 & 0x1; - pDst->acvi_uapsd = tmp63__ >> 1 & 0x1; - pDst->acbk_uapsd = tmp63__ >> 2 & 0x1; - pDst->acbe_uapsd = tmp63__ >> 3 & 0x1; - pDst->reserved1 = tmp63__ >> 4 & 0x1; - pDst->max_sp_length = tmp63__ >> 5 & 0x3; - pDst->reserved2 = tmp63__ >> 7 & 0x1; + tmp65__ = *pBuf; + pDst->acvo_uapsd = tmp65__ >> 0 & 0x1; + pDst->acvi_uapsd = tmp65__ >> 1 & 0x1; + pDst->acbk_uapsd = tmp65__ >> 2 & 0x1; + pDst->acbe_uapsd = tmp65__ >> 3 & 0x1; + pDst->reserved1 = tmp65__ >> 4 & 0x1; + pDst->max_sp_length = tmp65__ >> 5 & 0x3; + pDst->reserved2 = tmp65__ >> 7 & 0x1; (void)pCtx; return status; } /* End dot11f_unpack_ie_wmm_info_station. */ @@ -5417,14 +5561,14 @@ uint32_t dot11f_unpack_ie_wmm_params(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp64__; - uint8_t tmp65__; uint8_t tmp66__; uint8_t tmp67__; uint8_t tmp68__; uint8_t tmp69__; uint8_t tmp70__; uint8_t tmp71__; + uint8_t tmp72__; + uint8_t tmp73__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -5442,63 +5586,63 @@ uint32_t dot11f_unpack_ie_wmm_params(tpAniSirGlobal pCtx, pDst->reserved2 = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp64__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_aifsn = tmp64__ >> 0 & 0xf; - pDst->acbe_acm = tmp64__ >> 4 & 0x1; - pDst->acbe_aci = tmp64__ >> 5 & 0x3; - pDst->unused1 = tmp64__ >> 7 & 0x1; - tmp65__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_acwmin = tmp65__ >> 0 & 0xf; - pDst->acbe_acwmax = tmp65__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acbe_txoplimit, pBuf, 0); - pBuf += 2; - ielen -= (uint8_t)2; tmp66__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_aifsn = tmp66__ >> 0 & 0xf; - pDst->acbk_acm = tmp66__ >> 4 & 0x1; - pDst->acbk_aci = tmp66__ >> 5 & 0x3; - pDst->unused2 = tmp66__ >> 7 & 0x1; + pDst->acbe_aifsn = tmp66__ >> 0 & 0xf; + pDst->acbe_acm = tmp66__ >> 4 & 0x1; + pDst->acbe_aci = tmp66__ >> 5 & 0x3; + pDst->unused1 = tmp66__ >> 7 & 0x1; tmp67__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_acwmin = tmp67__ >> 0 & 0xf; - pDst->acbk_acwmax = tmp67__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acbk_txoplimit, pBuf, 0); + pDst->acbe_acwmin = tmp67__ >> 0 & 0xf; + pDst->acbe_acwmax = tmp67__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acbe_txoplimit, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; tmp68__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_aifsn = tmp68__ >> 0 & 0xf; - pDst->acvi_acm = tmp68__ >> 4 & 0x1; - pDst->acvi_aci = tmp68__ >> 5 & 0x3; - pDst->unused3 = tmp68__ >> 7 & 0x1; + pDst->acbk_aifsn = tmp68__ >> 0 & 0xf; + pDst->acbk_acm = tmp68__ >> 4 & 0x1; + pDst->acbk_aci = tmp68__ >> 5 & 0x3; + pDst->unused2 = tmp68__ >> 7 & 0x1; tmp69__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_acwmin = tmp69__ >> 0 & 0xf; - pDst->acvi_acwmax = tmp69__ >> 4 & 0xf; - framesntohs(pCtx, &pDst->acvi_txoplimit, pBuf, 0); + pDst->acbk_acwmin = tmp69__ >> 0 & 0xf; + pDst->acbk_acwmax = tmp69__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acbk_txoplimit, pBuf, 0); pBuf += 2; ielen -= (uint8_t)2; tmp70__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_aifsn = tmp70__ >> 0 & 0xf; - pDst->acvo_acm = tmp70__ >> 4 & 0x1; - pDst->acvo_aci = tmp70__ >> 5 & 0x3; - pDst->unused4 = tmp70__ >> 7 & 0x1; + pDst->acvi_aifsn = tmp70__ >> 0 & 0xf; + pDst->acvi_acm = tmp70__ >> 4 & 0x1; + pDst->acvi_aci = tmp70__ >> 5 & 0x3; + pDst->unused3 = tmp70__ >> 7 & 0x1; tmp71__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_acwmin = tmp71__ >> 0 & 0xf; - pDst->acvo_acwmax = tmp71__ >> 4 & 0xf; + pDst->acvi_acwmin = tmp71__ >> 0 & 0xf; + pDst->acvi_acwmax = tmp71__ >> 4 & 0xf; + framesntohs(pCtx, &pDst->acvi_txoplimit, pBuf, 0); + pBuf += 2; + ielen -= (uint8_t)2; + tmp72__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_aifsn = tmp72__ >> 0 & 0xf; + pDst->acvo_acm = tmp72__ >> 4 & 0x1; + pDst->acvo_aci = tmp72__ >> 5 & 0x3; + pDst->unused4 = tmp72__ >> 7 & 0x1; + tmp73__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_acwmin = tmp73__ >> 0 & 0xf; + pDst->acvo_acwmax = tmp73__ >> 4 & 0xf; framesntohs(pCtx, &pDst->acvo_txoplimit, pBuf, 0); (void)pCtx; return status; @@ -6107,7 +6251,7 @@ uint32_t dot11f_unpack_ie_bss_color_change(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp72__; + uint8_t tmp74__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -6115,9 +6259,9 @@ uint32_t dot11f_unpack_ie_bss_color_change(tpAniSirGlobal pCtx, pDst->countdown = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp72__ = *pBuf; - pDst->new_color = tmp72__ >> 0 & 0x3f; - pDst->reserved = tmp72__ >> 6 & 0x3; + tmp74__ = *pBuf; + pDst->new_color = tmp74__ >> 0 & 0x3f; + pDst->reserved = tmp74__ >> 6 & 0x3; (void)pCtx; return status; } /* End dot11f_unpack_ie_bss_color_change. */ @@ -6205,23 +6349,23 @@ uint32_t dot11f_unpack_ie_fils_indication(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint16_t tmp73__; + uint16_t tmp75__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohs(pCtx, &tmp73__, pBuf, 0); + framesntohs(pCtx, &tmp75__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->public_key_identifiers_cnt = tmp73__ >> 0 & 0x7; - pDst->realm_identifiers_cnt = tmp73__ >> 3 & 0x7; - pDst->is_ip_config_supported = tmp73__ >> 6 & 0x1; - pDst->is_cache_id_present = tmp73__ >> 7 & 0x1; - pDst->is_hessid_present = tmp73__ >> 8 & 0x1; - pDst->is_fils_sk_auth_supported = tmp73__ >> 9 & 0x1; - pDst->is_fils_sk_auth_pfs_supported = tmp73__ >> 10 & 0x1; - pDst->is_pk_auth_supported = tmp73__ >> 11 & 0x1; - pDst->reserved = tmp73__ >> 12 & 0xf; + pDst->public_key_identifiers_cnt = tmp75__ >> 0 & 0x7; + pDst->realm_identifiers_cnt = tmp75__ >> 3 & 0x7; + pDst->is_ip_config_supported = tmp75__ >> 6 & 0x1; + pDst->is_cache_id_present = tmp75__ >> 7 & 0x1; + pDst->is_hessid_present = tmp75__ >> 8 & 0x1; + pDst->is_fils_sk_auth_supported = tmp75__ >> 9 & 0x1; + pDst->is_fils_sk_auth_pfs_supported = tmp75__ >> 10 & 0x1; + pDst->is_pk_auth_supported = tmp75__ >> 11 & 0x1; + pDst->reserved = tmp75__ >> 12 & 0xf; pDst->num_variable_data = (uint8_t)(ielen); DOT11F_MEMCPY(pCtx, pDst->variable_data, pBuf, (ielen)); (void)pCtx; @@ -6362,18 +6506,18 @@ uint32_t dot11f_unpack_ie_hs20vendor_ie(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp74__; + uint8_t tmp76__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp74__ = *pBuf; + tmp76__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->dgaf_dis = tmp74__ >> 0 & 0x1; - pDst->hs_id_present = tmp74__ >> 1 & 0x3; - pDst->reserved = tmp74__ >> 3 & 0x1; - pDst->release_num = tmp74__ >> 4 & 0xf; + pDst->dgaf_dis = tmp76__ >> 0 & 0x1; + pDst->hs_id_present = tmp76__ >> 1 & 0x3; + pDst->reserved = tmp76__ >> 3 & 0x1; + pDst->release_num = tmp76__ >> 4 & 0xf; if (!ielen) { return 0U; } else { @@ -6404,18 +6548,18 @@ uint32_t dot11f_unpack_ie_ht2040_bss_coexistence(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp75__; + uint8_t tmp77__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - tmp75__ = *pBuf; - pDst->info_request = tmp75__ >> 0 & 0x1; - pDst->forty_mhz_intolerant = tmp75__ >> 1 & 0x1; - pDst->twenty_mhz_bsswidth_req = tmp75__ >> 2 & 0x1; - pDst->obss_scan_exemption_req = tmp75__ >> 3 & 0x1; - pDst->obss_scan_exemption_grant = tmp75__ >> 4 & 0x1; - pDst->unused = tmp75__ >> 5 & 0x7; + tmp77__ = *pBuf; + pDst->info_request = tmp77__ >> 0 & 0x1; + pDst->forty_mhz_intolerant = tmp77__ >> 1 & 0x1; + pDst->twenty_mhz_bsswidth_req = tmp77__ >> 2 & 0x1; + pDst->obss_scan_exemption_req = tmp77__ >> 3 & 0x1; + pDst->obss_scan_exemption_grant = tmp77__ >> 4 & 0x1; + pDst->unused = tmp77__ >> 5 & 0x7; (void)pCtx; return status; } /* End dot11f_unpack_ie_ht2040_bss_coexistence. */ @@ -6458,14 +6602,14 @@ uint32_t dot11f_unpack_ie_mu_edca_param_set(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint8_t tmp76__; - uint8_t tmp77__; uint8_t tmp78__; uint8_t tmp79__; uint8_t tmp80__; uint8_t tmp81__; uint8_t tmp82__; uint8_t tmp83__; + uint8_t tmp84__; + uint8_t tmp85__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; @@ -6473,63 +6617,63 @@ uint32_t dot11f_unpack_ie_mu_edca_param_set(tpAniSirGlobal pCtx, pDst->qos = *pBuf; pBuf += 1; ielen -= (uint8_t)1; - tmp76__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_aifsn = tmp76__ >> 0 & 0xf; - pDst->acbe_acm = tmp76__ >> 4 & 0x1; - pDst->acbe_aci = tmp76__ >> 5 & 0x3; - pDst->unused1 = tmp76__ >> 7 & 0x1; - tmp77__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->acbe_acwmin = tmp77__ >> 0 & 0xf; - pDst->acbe_acwmax = tmp77__ >> 4 & 0xf; - pDst->acbe_muedca_timer = *pBuf; - pBuf += 1; - ielen -= (uint8_t)1; tmp78__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_aifsn = tmp78__ >> 0 & 0xf; - pDst->acbk_acm = tmp78__ >> 4 & 0x1; - pDst->acbk_aci = tmp78__ >> 5 & 0x3; - pDst->unused2 = tmp78__ >> 7 & 0x1; + pDst->acbe_aifsn = tmp78__ >> 0 & 0xf; + pDst->acbe_acm = tmp78__ >> 4 & 0x1; + pDst->acbe_aci = tmp78__ >> 5 & 0x3; + pDst->unused1 = tmp78__ >> 7 & 0x1; tmp79__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acbk_acwmin = tmp79__ >> 0 & 0xf; - pDst->acbk_acwmax = tmp79__ >> 4 & 0xf; - pDst->acbk_muedca_timer = *pBuf; + pDst->acbe_acwmin = tmp79__ >> 0 & 0xf; + pDst->acbe_acwmax = tmp79__ >> 4 & 0xf; + pDst->acbe_muedca_timer = *pBuf; pBuf += 1; ielen -= (uint8_t)1; tmp80__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_aifsn = tmp80__ >> 0 & 0xf; - pDst->acvi_acm = tmp80__ >> 4 & 0x1; - pDst->acvi_aci = tmp80__ >> 5 & 0x3; - pDst->unused3 = tmp80__ >> 7 & 0x1; + pDst->acbk_aifsn = tmp80__ >> 0 & 0xf; + pDst->acbk_acm = tmp80__ >> 4 & 0x1; + pDst->acbk_aci = tmp80__ >> 5 & 0x3; + pDst->unused2 = tmp80__ >> 7 & 0x1; tmp81__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvi_acwmin = tmp81__ >> 0 & 0xf; - pDst->acvi_acwmax = tmp81__ >> 4 & 0xf; - pDst->acvi_muedca_timer = *pBuf; + pDst->acbk_acwmin = tmp81__ >> 0 & 0xf; + pDst->acbk_acwmax = tmp81__ >> 4 & 0xf; + pDst->acbk_muedca_timer = *pBuf; pBuf += 1; ielen -= (uint8_t)1; tmp82__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_aifsn = tmp82__ >> 0 & 0xf; - pDst->acvo_acm = tmp82__ >> 4 & 0x1; - pDst->acvo_aci = tmp82__ >> 5 & 0x3; - pDst->unused4 = tmp82__ >> 7 & 0x1; + pDst->acvi_aifsn = tmp82__ >> 0 & 0xf; + pDst->acvi_acm = tmp82__ >> 4 & 0x1; + pDst->acvi_aci = tmp82__ >> 5 & 0x3; + pDst->unused3 = tmp82__ >> 7 & 0x1; tmp83__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->acvo_acwmin = tmp83__ >> 0 & 0xf; - pDst->acvo_acwmax = tmp83__ >> 4 & 0xf; + pDst->acvi_acwmin = tmp83__ >> 0 & 0xf; + pDst->acvi_acwmax = tmp83__ >> 4 & 0xf; + pDst->acvi_muedca_timer = *pBuf; + pBuf += 1; + ielen -= (uint8_t)1; + tmp84__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_aifsn = tmp84__ >> 0 & 0xf; + pDst->acvo_acm = tmp84__ >> 4 & 0x1; + pDst->acvo_aci = tmp84__ >> 5 & 0x3; + pDst->unused4 = tmp84__ >> 7 & 0x1; + tmp85__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->acvo_acwmin = tmp85__ >> 0 & 0xf; + pDst->acvo_acwmax = tmp85__ >> 4 & 0xf; pDst->acvo_muedca_timer = *pBuf; (void)pCtx; return status; @@ -6596,99 +6740,99 @@ uint32_t dot11f_unpack_ie_vendor_he_cap(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint32_t tmp84__; - uint8_t tmp85__; uint32_t tmp86__; - uint32_t tmp87__; - uint8_t tmp88__; - uint16_t tmp89__; + uint8_t tmp87__; + uint32_t tmp88__; + uint32_t tmp89__; + uint8_t tmp90__; + uint16_t tmp91__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohl(pCtx, &tmp84__, pBuf, 0); - pBuf += 4; - ielen -= 4; - pDst->htc_he = tmp84__ >> 0 & 0x1; - pDst->twt_request = tmp84__ >> 1 & 0x1; - pDst->twt_responder = tmp84__ >> 2 & 0x1; - pDst->fragmentation = tmp84__ >> 3 & 0x3; - pDst->max_num_frag_msdu = tmp84__ >> 5 & 0x7; - pDst->min_frag_size = tmp84__ >> 8 & 0x3; - pDst->trigger_frm_mac_pad = tmp84__ >> 10 & 0x3; - pDst->multi_tid_aggr = tmp84__ >> 12 & 0x7; - pDst->he_link_adaptation = tmp84__ >> 15 & 0x3; - pDst->all_ack = tmp84__ >> 17 & 0x1; - pDst->ul_mu_rsp_sched = tmp84__ >> 18 & 0x1; - pDst->a_bsr = tmp84__ >> 19 & 0x1; - pDst->broadcast_twt = tmp84__ >> 20 & 0x1; - pDst->ba_32bit_bitmap = tmp84__ >> 21 & 0x1; - pDst->mu_cascade = tmp84__ >> 22 & 0x1; - pDst->ack_enabled_multitid = tmp84__ >> 23 & 0x1; - pDst->dl_mu_ba = tmp84__ >> 24 & 0x1; - pDst->omi_a_ctrl = tmp84__ >> 25 & 0x1; - pDst->ofdma_ra = tmp84__ >> 26 & 0x1; - pDst->max_ampdu_len = tmp84__ >> 27 & 0x3; - pDst->amsdu_frag = tmp84__ >> 29 & 0x1; - pDst->flex_twt_sched = tmp84__ >> 30 & 0x1; - pDst->rx_ctrl_frame = tmp84__ >> 31 & 0x1; - tmp85__ = *pBuf; - pBuf += 1; - ielen -= 1; - pDst->bsrp_ampdu_aggr = tmp85__ >> 0 & 0x1; - pDst->qtp = tmp85__ >> 1 & 0x1; - pDst->a_bqr = tmp85__ >> 2 & 0x1; - pDst->reserved1 = tmp85__ >> 3 & 0x1f; framesntohl(pCtx, &tmp86__, pBuf, 0); pBuf += 4; ielen -= 4; - pDst->dual_band = tmp86__ >> 0 & 0x1; - pDst->chan_width = tmp86__ >> 1 & 0x7f; - pDst->rx_pream_puncturing = tmp86__ >> 8 & 0xf; - pDst->device_class = tmp86__ >> 12 & 0x1; - pDst->ldpc_coding = tmp86__ >> 13 & 0x1; - pDst->he_ltf_gi_ppdu = tmp86__ >> 14 & 0x3; - pDst->he_ltf_gi_ndp = tmp86__ >> 16 & 0x3; - pDst->stbc = tmp86__ >> 18 & 0x3; - pDst->doppler = tmp86__ >> 20 & 0x3; - pDst->ul_mu = tmp86__ >> 22 & 0x3; - pDst->dcm_enc_tx = tmp86__ >> 24 & 0x7; - pDst->dcm_enc_rx = tmp86__ >> 27 & 0x7; - pDst->ul_he_mu = tmp86__ >> 30 & 0x1; - pDst->su_beamformer = tmp86__ >> 31 & 0x1; - framesntohl(pCtx, &tmp87__, pBuf, 0); - pBuf += 4; - ielen -= 4; - pDst->su_beamformee = tmp87__ >> 0 & 0x1; - pDst->mu_beamformer = tmp87__ >> 1 & 0x1; - pDst->bfee_sts_lt_80 = tmp87__ >> 2 & 0x7; - pDst->nsts_tol_lt_80 = tmp87__ >> 5 & 0x7; - pDst->bfee_sta_gt_80 = tmp87__ >> 8 & 0x7; - pDst->nsts_tot_gt_80 = tmp87__ >> 11 & 0x7; - pDst->num_sounding_lt_80 = tmp87__ >> 14 & 0x7; - pDst->num_sounding_gt_80 = tmp87__ >> 17 & 0x7; - pDst->su_feedback_tone16 = tmp87__ >> 20 & 0x1; - pDst->mu_feedback_tone16 = tmp87__ >> 21 & 0x1; - pDst->codebook_su = tmp87__ >> 22 & 0x1; - pDst->codebook_mu = tmp87__ >> 23 & 0x1; - pDst->beamforming_feedback = tmp87__ >> 24 & 0x7; - pDst->he_er_su_ppdu = tmp87__ >> 27 & 0x1; - pDst->dl_mu_mimo_part_bw = tmp87__ >> 28 & 0x1; - pDst->ppet_present = tmp87__ >> 29 & 0x1; - pDst->srp = tmp87__ >> 30 & 0x1; - pDst->power_boost = tmp87__ >> 31 & 0x1; - tmp88__ = *pBuf; + pDst->htc_he = tmp86__ >> 0 & 0x1; + pDst->twt_request = tmp86__ >> 1 & 0x1; + pDst->twt_responder = tmp86__ >> 2 & 0x1; + pDst->fragmentation = tmp86__ >> 3 & 0x3; + pDst->max_num_frag_msdu = tmp86__ >> 5 & 0x7; + pDst->min_frag_size = tmp86__ >> 8 & 0x3; + pDst->trigger_frm_mac_pad = tmp86__ >> 10 & 0x3; + pDst->multi_tid_aggr = tmp86__ >> 12 & 0x7; + pDst->he_link_adaptation = tmp86__ >> 15 & 0x3; + pDst->all_ack = tmp86__ >> 17 & 0x1; + pDst->ul_mu_rsp_sched = tmp86__ >> 18 & 0x1; + pDst->a_bsr = tmp86__ >> 19 & 0x1; + pDst->broadcast_twt = tmp86__ >> 20 & 0x1; + pDst->ba_32bit_bitmap = tmp86__ >> 21 & 0x1; + pDst->mu_cascade = tmp86__ >> 22 & 0x1; + pDst->ack_enabled_multitid = tmp86__ >> 23 & 0x1; + pDst->dl_mu_ba = tmp86__ >> 24 & 0x1; + pDst->omi_a_ctrl = tmp86__ >> 25 & 0x1; + pDst->ofdma_ra = tmp86__ >> 26 & 0x1; + pDst->max_ampdu_len = tmp86__ >> 27 & 0x3; + pDst->amsdu_frag = tmp86__ >> 29 & 0x1; + pDst->flex_twt_sched = tmp86__ >> 30 & 0x1; + pDst->rx_ctrl_frame = tmp86__ >> 31 & 0x1; + tmp87__ = *pBuf; pBuf += 1; ielen -= 1; - pDst->he_ltf_gi_4x = tmp88__ >> 0 & 0x1; - pDst->reserved2 = tmp88__ >> 1 & 0x7f; - framesntohs(pCtx, &tmp89__, pBuf, 0); + pDst->bsrp_ampdu_aggr = tmp87__ >> 0 & 0x1; + pDst->qtp = tmp87__ >> 1 & 0x1; + pDst->a_bqr = tmp87__ >> 2 & 0x1; + pDst->reserved1 = tmp87__ >> 3 & 0x1f; + framesntohl(pCtx, &tmp88__, pBuf, 0); + pBuf += 4; + ielen -= 4; + pDst->dual_band = tmp88__ >> 0 & 0x1; + pDst->chan_width = tmp88__ >> 1 & 0x7f; + pDst->rx_pream_puncturing = tmp88__ >> 8 & 0xf; + pDst->device_class = tmp88__ >> 12 & 0x1; + pDst->ldpc_coding = tmp88__ >> 13 & 0x1; + pDst->he_ltf_gi_ppdu = tmp88__ >> 14 & 0x3; + pDst->he_ltf_gi_ndp = tmp88__ >> 16 & 0x3; + pDst->stbc = tmp88__ >> 18 & 0x3; + pDst->doppler = tmp88__ >> 20 & 0x3; + pDst->ul_mu = tmp88__ >> 22 & 0x3; + pDst->dcm_enc_tx = tmp88__ >> 24 & 0x7; + pDst->dcm_enc_rx = tmp88__ >> 27 & 0x7; + pDst->ul_he_mu = tmp88__ >> 30 & 0x1; + pDst->su_beamformer = tmp88__ >> 31 & 0x1; + framesntohl(pCtx, &tmp89__, pBuf, 0); + pBuf += 4; + ielen -= 4; + pDst->su_beamformee = tmp89__ >> 0 & 0x1; + pDst->mu_beamformer = tmp89__ >> 1 & 0x1; + pDst->bfee_sts_lt_80 = tmp89__ >> 2 & 0x7; + pDst->nsts_tol_lt_80 = tmp89__ >> 5 & 0x7; + pDst->bfee_sta_gt_80 = tmp89__ >> 8 & 0x7; + pDst->nsts_tot_gt_80 = tmp89__ >> 11 & 0x7; + pDst->num_sounding_lt_80 = tmp89__ >> 14 & 0x7; + pDst->num_sounding_gt_80 = tmp89__ >> 17 & 0x7; + pDst->su_feedback_tone16 = tmp89__ >> 20 & 0x1; + pDst->mu_feedback_tone16 = tmp89__ >> 21 & 0x1; + pDst->codebook_su = tmp89__ >> 22 & 0x1; + pDst->codebook_mu = tmp89__ >> 23 & 0x1; + pDst->beamforming_feedback = tmp89__ >> 24 & 0x7; + pDst->he_er_su_ppdu = tmp89__ >> 27 & 0x1; + pDst->dl_mu_mimo_part_bw = tmp89__ >> 28 & 0x1; + pDst->ppet_present = tmp89__ >> 29 & 0x1; + pDst->srp = tmp89__ >> 30 & 0x1; + pDst->power_boost = tmp89__ >> 31 & 0x1; + tmp90__ = *pBuf; + pBuf += 1; + ielen -= 1; + pDst->he_ltf_gi_4x = tmp90__ >> 0 & 0x1; + pDst->reserved2 = tmp90__ >> 1 & 0x7f; + framesntohs(pCtx, &tmp91__, pBuf, 0); pBuf += 2; ielen -= 2; - pDst->nss_supported = tmp89__ >> 0 & 0x7; - pDst->mcs_supported = tmp89__ >> 3 & 0x7; - pDst->tx_bw_bitmap = tmp89__ >> 6 & 0x1f; - pDst->rx_bw_bitmap = tmp89__ >> 11 & 0x1f; + pDst->nss_supported = tmp91__ >> 0 & 0x7; + pDst->mcs_supported = tmp91__ >> 3 & 0x7; + pDst->tx_bw_bitmap = tmp91__ >> 6 & 0x1f; + pDst->rx_bw_bitmap = tmp91__ >> 11 & 0x1f; (void)pCtx; if (!pDst->ppet_present) @@ -6726,23 +6870,23 @@ uint32_t dot11f_unpack_ie_vendor_he_op(tpAniSirGlobal pCtx, bool append_ie) { uint32_t status = DOT11F_PARSE_SUCCESS; - uint32_t tmp90__; + uint32_t tmp92__; (void) pBuf; (void)ielen; /* Shutup the compiler */ if (pDst->present) status = DOT11F_DUPLICATE_IE; pDst->present = 1; - framesntohl(pCtx, &tmp90__, pBuf, 0); + framesntohl(pCtx, &tmp92__, pBuf, 0); pBuf += 4; ielen -= 4; - pDst->bss_color = tmp90__ >> 0 & 0x3f; - pDst->default_pe = tmp90__ >> 6 & 0x7; - pDst->twt_required = tmp90__ >> 9 & 0x1; - pDst->rts_threshold = tmp90__ >> 10 & 0x3ff; - pDst->partial_bss_col = tmp90__ >> 20 & 0x1; - pDst->maxbssid_ind = tmp90__ >> 21 & 0xff; - pDst->tx_bssid_ind = tmp90__ >> 29 & 0x1; - pDst->bss_col_disabled = tmp90__ >> 30 & 0x1; - pDst->dual_beacon = tmp90__ >> 31 & 0x1; + pDst->bss_color = tmp92__ >> 0 & 0x3f; + pDst->default_pe = tmp92__ >> 6 & 0x7; + pDst->twt_required = tmp92__ >> 9 & 0x1; + pDst->rts_threshold = tmp92__ >> 10 & 0x3ff; + pDst->partial_bss_col = tmp92__ >> 20 & 0x1; + pDst->maxbssid_ind = tmp92__ >> 21 & 0xff; + pDst->tx_bssid_ind = tmp92__ >> 29 & 0x1; + pDst->bss_col_disabled = tmp92__ >> 30 & 0x1; + pDst->dual_beacon = tmp92__ >> 31 & 0x1; DOT11F_MEMCPY(pCtx, pDst->basic_mcs_nss, pBuf, 3); pBuf += 3; ielen -= (uint8_t)3; @@ -7059,7 +7203,7 @@ static const tIEDefn IES_AssocRequest[] = { 0, 22, 49, SigIevendor_he_cap, {0, 19, 116, 1, 0}, 4, DOT11F_EID_VENDOR_HE_CAP, 0, 0, }, { offsetof(tDot11fAssocRequest, MBO_IE), offsetof(tDot11fIEMBO_IE, - present), 0, "MBO_IE", 0, 9, 12, SigIeMBO_IE, {80, 111, 154, 22, 0}, + present), 0, "MBO_IE", 0, 6, 295, SigIeMBO_IE, {80, 111, 154, 22, 0}, 4, DOT11F_EID_MBO_IE, 0, 0, }, { offsetof(tDot11fAssocRequest, osen_ie), offsetof(tDot11fIEosen_ie, present), 0, "osen_ie", 0, 6, 261, SigIeosen_ie, {80, 111, 154, 18, 0}, @@ -7497,7 +7641,7 @@ static const tIEDefn IES_Beacon[] = { present), 0, "ESEVersion", 0, 7, 7, SigIeESEVersion, {0, 64, 150, 3, 0}, 4, DOT11F_EID_ESEVERSION, 0, 0, }, { offsetof(tDot11fBeacon, MBO_IE), offsetof(tDot11fIEMBO_IE, present), 0, - "MBO_IE", 0, 9, 12, SigIeMBO_IE, {80, 111, 154, 22, 0}, + "MBO_IE", 0, 6, 295, SigIeMBO_IE, {80, 111, 154, 22, 0}, 4, DOT11F_EID_MBO_IE, 0, 0, }, { offsetof(tDot11fBeacon, QCN_IE), offsetof(tDot11fIEQCN_IE, present), 0, "QCN_IE", 0, 10, 10, SigIeQCN_IE, {140, 253, 240, 1, 0}, @@ -7943,7 +8087,7 @@ static const tIEDefn IES_BeaconIEs[] = { 0, 7, 7, SigIeQComVendorIE, {0, 160, 198, 0, 0}, 3, DOT11F_EID_QCOMVENDORIE, 0, 0, }, { offsetof(tDot11fBeaconIEs, MBO_IE), offsetof(tDot11fIEMBO_IE, present), - 0, "MBO_IE", 0, 9, 12, SigIeMBO_IE, {80, 111, 154, 22, 0}, + 0, "MBO_IE", 0, 6, 295, SigIeMBO_IE, {80, 111, 154, 22, 0}, 4, DOT11F_EID_MBO_IE, 0, 0, }, { offsetof(tDot11fBeaconIEs, QCN_IE), offsetof(tDot11fIEQCN_IE, present), 0, "QCN_IE", 0, 10, 10, SigIeQCN_IE, {140, 253, 240, 1, 0}, @@ -8587,7 +8731,7 @@ static const tIEDefn IES_ProbeResponse[] = { 0, 7, 7, SigIeESEVersion, {0, 64, 150, 3, 0}, 4, DOT11F_EID_ESEVERSION, 0, 0, }, { offsetof(tDot11fProbeResponse, MBO_IE), offsetof(tDot11fIEMBO_IE, - present), 0, "MBO_IE", 0, 9, 12, SigIeMBO_IE, {80, 111, 154, 22, 0}, + present), 0, "MBO_IE", 0, 6, 295, SigIeMBO_IE, {80, 111, 154, 22, 0}, 4, DOT11F_EID_MBO_IE, 0, 0, }, { offsetof(tDot11fProbeResponse, QCN_IE), offsetof(tDot11fIEQCN_IE, present), 0, "QCN_IE", 0, 10, 10, SigIeQCN_IE, {140, 253, 240, 1, 0}, @@ -12266,6 +12410,97 @@ static uint32_t unpack_tlv_core(tpAniSirGlobal pCtx, (uint8_t *)&(((tDot11fTLVWPSState *) (pFrm + pTlv->offset))->state)); break; + case SigTlvassoc_disallowed: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVassoc_disallowed *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVassoc_disallowed *) + (pFrm + pTlv->offset))->reason_code)); + break; + case SigTlvassoc_retry_delay: + status |= + dot11f_unpack_tlv_common_func2(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVassoc_retry_delay *) + (pFrm + pTlv->offset))->present), + (uint16_t *)&(((tDot11fTLVassoc_retry_delay *) + (pFrm + pTlv->offset))->delay)); + break; + case SigTlvcellular_data_cap: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVcellular_data_cap *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVcellular_data_cap *) + (pFrm + pTlv->offset))->cellular_connectivity)); + break; + case SigTlvcellular_data_con_pref: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVcellular_data_con_pref *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVcellular_data_con_pref *) + (pFrm + pTlv->offset))->cellular_preference)); + break; + case SigTlvmbo_ap_cap: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVmbo_ap_cap *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVmbo_ap_cap *) + (pFrm + pTlv->offset))->mbo_cap_ind)); + break; + case SigTlvnon_prefferd_chan_rep: + status |= + dot11f_unpack_tlv_non_prefferd_chan_rep(pCtx, + pBufRemaining, len, + (tDot11fTLVnon_prefferd_chan_rep *) + (pFrm + pTlv->offset)); + break; + case SigTlvoce_cap: + status |= + dot11f_unpack_tlv_oce_cap(pCtx, + pBufRemaining, len, + (tDot11fTLVoce_cap *) + (pFrm + pTlv->offset)); + break; + case SigTlvreduced_wan_metrics: + status |= + dot11f_unpack_tlv_reduced_wan_metrics(pCtx, + pBufRemaining, len, + (tDot11fTLVreduced_wan_metrics *) + (pFrm + pTlv->offset)); + break; + case SigTlvrssi_assoc_rej: + status |= + dot11f_unpack_tlv_rssi_assoc_rej(pCtx, + pBufRemaining, len, + (tDot11fTLVrssi_assoc_rej *) + (pFrm + pTlv->offset)); + break; + case SigTlvtransition_reason: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVtransition_reason *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVtransition_reason *) + (pFrm + pTlv->offset))->transition_reason_code)); + break; + case SigTlvtransition_reject_reason: + status |= + dot11f_unpack_tlv_common_func(pCtx, + pBufRemaining, len, + (uint8_t *)&(((tDot11fTLVtransition_reject_reason *) + (pFrm + pTlv->offset))->present), + (uint8_t *)&(((tDot11fTLVtransition_reject_reason *) + (pFrm + pTlv->offset))->transition_reject_code)); + break; case SigTlvP2PInterface: status |= dot11f_unpack_tlv_p2_p_interface(pCtx, @@ -12494,6 +12729,19 @@ uint32_t dot11f_get_packed_ieft_info(tpAniSirGlobal pCtx, return status; } /* End dot11f_get_packed_ieft_info. */ +uint32_t dot11f_get_packed_ie_MBO_IE(tpAniSirGlobal pCtx, + tDot11fIEMBO_IE *pIe, uint32_t *pnNeeded) +{ + uint32_t status = DOT11F_PARSE_SUCCESS; + (void)pCtx; + while (pIe->present) { + status = get_packed_size_tlv_core(pCtx, (uint8_t *)pIe, pnNeeded, + TLVS_MBO_IE); + break; + } + return status; +} /* End dot11f_get_packed_ie_MBO_IE. */ + uint32_t dot11f_get_packed_ie_measurement_report(tpAniSirGlobal pCtx, tDot11fIEMeasurementReport *pIe, uint32_t *pnNeeded) { @@ -14043,12 +14291,11 @@ static uint32_t get_packed_size_core(tpAniSirGlobal pCtx, break; case SigIeMBO_IE: offset = sizeof(tDot11fIEMBO_IE); - byteCount = ((tDot11fIEMBO_IE *) - (pFrm + pIe->offset + offset * i))-> - num_assoc_disallowed + 3; - pIePresent = ((tDot11fIEMBO_IE *) - (pFrm + pIe->offset + offset * i))-> - present; + status |= + dot11f_get_packed_ie_MBO_IE( + pCtx, (tDot11fIEMBO_IE *) + (pFrm + pIe->offset + offset * i), + pnNeeded); break; case SigIeMeasurementReport: offset = sizeof(tDot11fIEMeasurementReport); @@ -14899,6 +15146,61 @@ static uint32_t get_packed_size_tlv_core(tpAniSirGlobal pCtx, pTlvPresent = ((tDot11fTLVWPSState *) (pFrm + pTlv->offset))->present; break; + case SigTlvassoc_disallowed: + byteCount = 1; + pTlvPresent = ((tDot11fTLVassoc_disallowed *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvassoc_retry_delay: + byteCount = 2; + pTlvPresent = ((tDot11fTLVassoc_retry_delay *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvcellular_data_cap: + byteCount = 1; + pTlvPresent = ((tDot11fTLVcellular_data_cap *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvcellular_data_con_pref: + byteCount = 1; + pTlvPresent = ((tDot11fTLVcellular_data_con_pref *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvmbo_ap_cap: + byteCount = 1; + pTlvPresent = ((tDot11fTLVmbo_ap_cap *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvnon_prefferd_chan_rep: + byteCount = ((tDot11fTLVnon_prefferd_chan_rep *)(pFrm + pTlv->offset))->num_channel_report+1; + pTlvPresent = ((tDot11fTLVnon_prefferd_chan_rep *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvoce_cap: + byteCount = 1; + pTlvPresent = ((tDot11fTLVoce_cap *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvreduced_wan_metrics: + byteCount = 1; + pTlvPresent = ((tDot11fTLVreduced_wan_metrics *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvrssi_assoc_rej: + byteCount = 2; + pTlvPresent = ((tDot11fTLVrssi_assoc_rej *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvtransition_reason: + byteCount = 1; + pTlvPresent = ((tDot11fTLVtransition_reason *) + (pFrm + pTlv->offset))->present; + break; + case SigTlvtransition_reject_reason: + byteCount = 1; + pTlvPresent = ((tDot11fTLVtransition_reject_reason *) + (pFrm + pTlv->offset))->present; + break; case SigTlvP2PInterface: byteCount = 6; pTlvPresent = ((tDot11fTLVP2PInterface *) @@ -14967,25 +15269,25 @@ void dot11f_pack_ff_capabilities(tpAniSirGlobal pCtx, tDot11fFfCapabilities *pSrc, uint8_t *pBuf) { - uint16_t tmp91__; - tmp91__ = 0U; - tmp91__ |= (pSrc->ess << 0); - tmp91__ |= (pSrc->ibss << 1); - tmp91__ |= (pSrc->cfPollable << 2); - tmp91__ |= (pSrc->cfPollReq << 3); - tmp91__ |= (pSrc->privacy << 4); - tmp91__ |= (pSrc->shortPreamble << 5); - tmp91__ |= (pSrc->pbcc << 6); - tmp91__ |= (pSrc->channelAgility << 7); - tmp91__ |= (pSrc->spectrumMgt << 8); - tmp91__ |= (pSrc->qos << 9); - tmp91__ |= (pSrc->shortSlotTime << 10); - tmp91__ |= (pSrc->apsd << 11); - tmp91__ |= (pSrc->rrm << 12); - tmp91__ |= (pSrc->dsssOfdm << 13); - tmp91__ |= (pSrc->delayedBA << 14); - tmp91__ |= (pSrc->immediateBA << 15); - frameshtons(pCtx, pBuf, tmp91__, 0); + uint16_t tmp93__; + tmp93__ = 0U; + tmp93__ |= (pSrc->ess << 0); + tmp93__ |= (pSrc->ibss << 1); + tmp93__ |= (pSrc->cfPollable << 2); + tmp93__ |= (pSrc->cfPollReq << 3); + tmp93__ |= (pSrc->privacy << 4); + tmp93__ |= (pSrc->shortPreamble << 5); + tmp93__ |= (pSrc->pbcc << 6); + tmp93__ |= (pSrc->channelAgility << 7); + tmp93__ |= (pSrc->spectrumMgt << 8); + tmp93__ |= (pSrc->qos << 9); + tmp93__ |= (pSrc->shortSlotTime << 10); + tmp93__ |= (pSrc->apsd << 11); + tmp93__ |= (pSrc->rrm << 12); + tmp93__ |= (pSrc->dsssOfdm << 13); + tmp93__ |= (pSrc->delayedBA << 14); + tmp93__ |= (pSrc->immediateBA << 15); + frameshtons(pCtx, pBuf, tmp93__, 0); (void)pCtx; } /* End dot11f_pack_ff_capabilities. */ @@ -15049,13 +15351,13 @@ void dot11f_pack_ff_operating_mode(tpAniSirGlobal pCtx, tDot11fFfOperatingMode *pSrc, uint8_t *pBuf) { - uint8_t tmp92__; - tmp92__ = 0U; - tmp92__ |= (pSrc->chanWidth << 0); - tmp92__ |= (pSrc->reserved << 2); - tmp92__ |= (pSrc->rxNSS << 4); - tmp92__ |= (pSrc->rxNSSType << 7); - *pBuf = tmp92__; + uint8_t tmp94__; + tmp94__ = 0U; + tmp94__ |= (pSrc->chanWidth << 0); + tmp94__ |= (pSrc->reserved << 2); + tmp94__ |= (pSrc->rxNSS << 4); + tmp94__ |= (pSrc->rxNSSType << 7); + *pBuf = tmp94__; (void)pCtx; } /* End dot11f_pack_ff_operating_mode. */ @@ -15095,12 +15397,12 @@ void dot11f_pack_ff_sm_power_mode_set(tpAniSirGlobal pCtx, tDot11fFfSMPowerModeSet *pSrc, uint8_t *pBuf) { - uint8_t tmp93__; - tmp93__ = 0U; - tmp93__ |= (pSrc->PowerSave_En << 0); - tmp93__ |= (pSrc->Mode << 1); - tmp93__ |= (pSrc->reserved << 2); - *pBuf = tmp93__; + uint8_t tmp95__; + tmp95__ = 0U; + tmp95__ |= (pSrc->PowerSave_En << 0); + tmp95__ |= (pSrc->Mode << 1); + tmp95__ |= (pSrc->reserved << 2); + *pBuf = tmp95__; (void)pCtx; } /* End dot11f_pack_ff_sm_power_mode_set. */ @@ -15140,19 +15442,19 @@ void dot11f_pack_ff_ts_info(tpAniSirGlobal pCtx, tDot11fFfTSInfo *pSrc, uint8_t *pBuf) { - uint32_t tmp94__; - tmp94__ = 0U; - tmp94__ |= (pSrc->traffic_type << 0); - tmp94__ |= (pSrc->tsid << 1); - tmp94__ |= (pSrc->direction << 5); - tmp94__ |= (pSrc->access_policy << 7); - tmp94__ |= (pSrc->aggregation << 9); - tmp94__ |= (pSrc->psb << 10); - tmp94__ |= (pSrc->user_priority << 11); - tmp94__ |= (pSrc->tsinfo_ack_pol << 14); - tmp94__ |= (pSrc->schedule << 16); - tmp94__ |= (pSrc->unused << 17); - frameshtonl(pCtx, pBuf, tmp94__, 0); + uint32_t tmp96__; + tmp96__ = 0U; + tmp96__ |= (pSrc->traffic_type << 0); + tmp96__ |= (pSrc->tsid << 1); + tmp96__ |= (pSrc->direction << 5); + tmp96__ |= (pSrc->access_policy << 7); + tmp96__ |= (pSrc->aggregation << 9); + tmp96__ |= (pSrc->psb << 10); + tmp96__ |= (pSrc->user_priority << 11); + tmp96__ |= (pSrc->tsinfo_ack_pol << 14); + tmp96__ |= (pSrc->schedule << 16); + tmp96__ |= (pSrc->unused << 17); + frameshtonl(pCtx, pBuf, tmp96__, 0); (void)pCtx; } /* End dot11f_pack_ff_ts_info. */ @@ -15208,13 +15510,13 @@ void dot11f_pack_ff_addba_param_set(tpAniSirGlobal pCtx, tDot11fFfaddba_param_set *pSrc, uint8_t *pBuf) { - uint16_t tmp95__; - tmp95__ = 0U; - tmp95__ |= (pSrc->amsdu_supp << 0); - tmp95__ |= (pSrc->policy << 1); - tmp95__ |= (pSrc->tid << 2); - tmp95__ |= (pSrc->buff_size << 6); - frameshtons(pCtx, pBuf, tmp95__, 0); + uint16_t tmp97__; + tmp97__ = 0U; + tmp97__ |= (pSrc->amsdu_supp << 0); + tmp97__ |= (pSrc->policy << 1); + tmp97__ |= (pSrc->tid << 2); + tmp97__ |= (pSrc->buff_size << 6); + frameshtons(pCtx, pBuf, tmp97__, 0); (void)pCtx; } /* End dot11f_pack_ff_addba_param_set. */ @@ -15222,11 +15524,11 @@ void dot11f_pack_ff_ba_start_seq_ctrl(tpAniSirGlobal pCtx, tDot11fFfba_start_seq_ctrl *pSrc, uint8_t *pBuf) { - uint16_t tmp96__; - tmp96__ = 0U; - tmp96__ |= (pSrc->frag_number << 0); - tmp96__ |= (pSrc->ssn << 4); - frameshtons(pCtx, pBuf, tmp96__, 0); + uint16_t tmp98__; + tmp98__ = 0U; + tmp98__ |= (pSrc->frag_number << 0); + tmp98__ |= (pSrc->ssn << 4); + frameshtons(pCtx, pBuf, tmp98__, 0); (void)pCtx; } /* End dot11f_pack_ff_ba_start_seq_ctrl. */ @@ -15242,12 +15544,12 @@ void dot11f_pack_ff_delba_param_set(tpAniSirGlobal pCtx, tDot11fFfdelba_param_set *pSrc, uint8_t *pBuf) { - uint16_t tmp97__; - tmp97__ = 0U; - tmp97__ |= (pSrc->reserved << 0); - tmp97__ |= (pSrc->initiator << 11); - tmp97__ |= (pSrc->tid << 12); - frameshtons(pCtx, pBuf, tmp97__, 0); + uint16_t tmp99__; + tmp99__ = 0U; + tmp99__ |= (pSrc->reserved << 0); + tmp99__ |= (pSrc->initiator << 11); + tmp99__ |= (pSrc->tid << 12); + frameshtons(pCtx, pBuf, tmp99__, 0); (void)pCtx; } /* End dot11f_pack_ff_delba_param_set. */ @@ -15255,13 +15557,13 @@ void dot11f_pack_ff_ext_chan_switch_ann_action(tpAniSirGlobal pCtx, tDot11fFfext_chan_switch_ann_action *pSrc, uint8_t *pBuf) { - uint32_t tmp98__; - tmp98__ = 0U; - tmp98__ |= (pSrc->switch_mode << 0); - tmp98__ |= (pSrc->op_class << 8); - tmp98__ |= (pSrc->new_channel << 16); - tmp98__ |= (pSrc->switch_count << 24); - frameshtonl(pCtx, pBuf, tmp98__, 0); + uint32_t tmp100__; + tmp100__ = 0U; + tmp100__ |= (pSrc->switch_mode << 0); + tmp100__ |= (pSrc->op_class << 8); + tmp100__ |= (pSrc->new_channel << 16); + tmp100__ |= (pSrc->switch_count << 24); + frameshtonl(pCtx, pBuf, tmp100__, 0); (void)pCtx; } /* End dot11f_pack_ff_ext_chan_switch_ann_action. */ @@ -15348,7 +15650,7 @@ uint32_t dot11f_pack_tlv_version2(tpAniSirGlobal pCtx, uint8_t *pTlvLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp99__; + uint8_t tmp101__; nNeeded += 3; if (nNeeded > nBuf) return DOT11F_BUFFER_OVERFLOW; @@ -15357,10 +15659,10 @@ uint32_t dot11f_pack_tlv_version2(tpAniSirGlobal pCtx, pBuf += 1; *pnConsumed += 1; pTlvLen = pBuf; pBuf += 1; *pnConsumed += 1; - tmp99__ = 0U; - tmp99__ |= (pSrc->minor << 0); - tmp99__ |= (pSrc->major << 4); - *pBuf = tmp99__; + tmp101__ = 0U; + tmp101__ |= (pSrc->minor << 0); + tmp101__ |= (pSrc->major << 4); + *pBuf = tmp101__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -16317,7 +16619,7 @@ uint32_t dot11f_pack_tlv_version(tpAniSirGlobal pCtx, uint8_t *pTlvLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp100__; + uint8_t tmp102__; nNeeded += 5; if (nNeeded > nBuf) return DOT11F_BUFFER_OVERFLOW; @@ -16326,10 +16628,10 @@ uint32_t dot11f_pack_tlv_version(tpAniSirGlobal pCtx, pBuf += 2; *pnConsumed += 2; pTlvLen = pBuf; pBuf += 2; *pnConsumed += 2; - tmp100__ = 0U; - tmp100__ |= (pSrc->minor << 0); - tmp100__ |= (pSrc->major << 4); - *pBuf = tmp100__; + tmp102__ = 0U; + tmp102__ |= (pSrc->minor << 0); + tmp102__ |= (pSrc->major << 4); + *pBuf = tmp102__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -16371,6 +16673,344 @@ uint32_t dot11f_pack_tlv_wps_state(tpAniSirGlobal pCtx, return DOT11F_PARSE_SUCCESS; } /* End dot11f_pack_tlv_wps_state. */ +uint32_t dot11f_pack_tlv_assoc_disallowed(tpAniSirGlobal pCtx, + tDot11fTLVassoc_disallowed *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 4; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->reason_code; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_assoc_disallowed. */ + +uint32_t dot11f_pack_tlv_assoc_retry_delay(tpAniSirGlobal pCtx, + tDot11fTLVassoc_retry_delay *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 4; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 8; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + frameshtons(pCtx, pBuf, pSrc->delay, 0); + *pnConsumed += 2; + pBuf += 2; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_assoc_retry_delay. */ + +uint32_t dot11f_pack_tlv_cellular_data_cap(tpAniSirGlobal pCtx, + tDot11fTLVcellular_data_cap *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 3; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->cellular_connectivity; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_cellular_data_cap. */ + +uint32_t dot11f_pack_tlv_cellular_data_con_pref(tpAniSirGlobal pCtx, + tDot11fTLVcellular_data_con_pref *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 5; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->cellular_preference; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_cellular_data_con_pref. */ + +uint32_t dot11f_pack_tlv_mbo_ap_cap(tpAniSirGlobal pCtx, + tDot11fTLVmbo_ap_cap *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 1; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->mbo_cap_ind; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_mbo_ap_cap. */ + +uint32_t dot11f_pack_tlv_non_prefferd_chan_rep(tpAniSirGlobal pCtx, + tDot11fTLVnon_prefferd_chan_rep *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += (pSrc->num_channel_report + 3) ; + + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 2; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->oper_class; + *pnConsumed += 1; + pBuf += 1; + DOT11F_MEMCPY(pCtx, pBuf, &(pSrc->channel_report), pSrc->num_channel_report); + *pnConsumed += pSrc->num_channel_report; + pBuf += pSrc->num_channel_report; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_non_prefferd_chan_rep. */ + +uint32_t dot11f_pack_tlv_oce_cap(tpAniSirGlobal pCtx, + tDot11fTLVoce_cap *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + uint8_t tmp103__; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 101; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + tmp103__ = 0U; + tmp103__ |= (pSrc->oce_release << 0); + tmp103__ |= (pSrc->is_sta_cfon << 3); + tmp103__ |= (pSrc->non_oce_ap_present << 4); + tmp103__ |= (pSrc->reserved << 5); + *pBuf = tmp103__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_oce_cap. */ + +uint32_t dot11f_pack_tlv_reduced_wan_metrics(tpAniSirGlobal pCtx, + tDot11fTLVreduced_wan_metrics *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + uint8_t tmp104__; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 103; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + tmp104__ = 0U; + tmp104__ |= (pSrc->downlink_av_cap << 0); + tmp104__ |= (pSrc->uplink_av_cap << 4); + *pBuf = tmp104__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_reduced_wan_metrics. */ + +uint32_t dot11f_pack_tlv_rssi_assoc_rej(tpAniSirGlobal pCtx, + tDot11fTLVrssi_assoc_rej *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 4; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 102; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->delta_rssi; + *pnConsumed += 1; + pBuf += 1; + *pBuf = pSrc->retry_delay; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_rssi_assoc_rej. */ + +uint32_t dot11f_pack_tlv_transition_reason(tpAniSirGlobal pCtx, + tDot11fTLVtransition_reason *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 6; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->transition_reason_code; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_transition_reason. */ + +uint32_t dot11f_pack_tlv_transition_reject_reason(tpAniSirGlobal pCtx, + tDot11fTLVtransition_reject_reason *pSrc, + uint8_t *pBuf, + uint32_t nBuf, + uint32_t *pnConsumed) +{ + uint8_t *pTlvLen = 0; + uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t nNeeded = 0U; + nNeeded += 3; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; + while (pSrc->present) { + *pBuf = 7; + pBuf += 1; *pnConsumed += 1; + pTlvLen = pBuf; + pBuf += 1; *pnConsumed += 1; + *pBuf = pSrc->transition_reject_code; + *pnConsumed += 1; + pBuf += 1; + break; + } + (void)pCtx; + if (pTlvLen) { + *pTlvLen = *pnConsumed - nConsumedOnEntry - 2; + } + return DOT11F_PARSE_SUCCESS; +} /* End dot11f_pack_tlv_transition_reject_reason. */ + uint32_t dot11f_pack_tlv_p2_p_interface(tpAniSirGlobal pCtx, tDot11fTLVP2PInterface *pSrc, uint8_t *pBuf, @@ -16438,7 +17078,7 @@ uint32_t dot11f_pack_ie_gtk(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp101__; + uint16_t tmp105__; nNeeded += (pSrc->num_key + 11); while (pSrc->present) { if (nNeeded > nBuf) @@ -16447,10 +17087,10 @@ uint32_t dot11f_pack_ie_gtk(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp101__ = 0U; - tmp101__ |= (pSrc->keyId << 0); - tmp101__ |= (pSrc->reserved << 2); - frameshtons(pCtx, pBuf, tmp101__, 0); + tmp105__ = 0U; + tmp105__ |= (pSrc->keyId << 0); + tmp105__ |= (pSrc->reserved << 2); + frameshtons(pCtx, pBuf, tmp105__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -16578,7 +17218,7 @@ uint32_t dot11f_pack_ie_ppe_threshold(tpAniSirGlobal pCtx, uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; uint8_t ru_mask, ru_count; - uint8_t tmp102__; + uint8_t tmp106__; nNeeded += (pSrc->num_ppet + 1); while (pSrc->present) { if (nNeeded > nBuf) @@ -16587,11 +17227,11 @@ uint32_t dot11f_pack_ie_ppe_threshold(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp102__ = 0U; - tmp102__ |= (pSrc->nss_count << 0); - tmp102__ |= (pSrc->ru_idx_mask << 3); - tmp102__ |= (pSrc->ppet_b1 << 7); - *pBuf = tmp102__; + tmp106__ = 0U; + tmp106__ |= (pSrc->nss_count << 0); + tmp106__ |= (pSrc->ru_idx_mask << 3); + tmp106__ |= (pSrc->ppet_b1 << 7); + *pBuf = tmp106__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -16906,11 +17546,11 @@ uint32_t dot11f_pack_ie_rrm_enabled_cap(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp103__; - uint8_t tmp104__; - uint8_t tmp105__; - uint8_t tmp106__; uint8_t tmp107__; + uint8_t tmp108__; + uint8_t tmp109__; + uint8_t tmp110__; + uint8_t tmp111__; nNeeded += 5; while (pSrc->present) { if (nNeeded > nBuf) @@ -16919,60 +17559,60 @@ uint32_t dot11f_pack_ie_rrm_enabled_cap(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp103__ = 0U; - tmp103__ |= (pSrc->LinkMeasurement << 0); - tmp103__ |= (pSrc->NeighborRpt << 1); - tmp103__ |= (pSrc->parallel << 2); - tmp103__ |= (pSrc->repeated << 3); - tmp103__ |= (pSrc->BeaconPassive << 4); - tmp103__ |= (pSrc->BeaconActive << 5); - tmp103__ |= (pSrc->BeaconTable << 6); - tmp103__ |= (pSrc->BeaconRepCond << 7); - *pBuf = tmp103__; - *pnConsumed += 1; - pBuf += 1; - nBuf -= 1 ; - tmp104__ = 0U; - tmp104__ |= (pSrc->FrameMeasurement << 0); - tmp104__ |= (pSrc->ChannelLoad << 1); - tmp104__ |= (pSrc->NoiseHistogram << 2); - tmp104__ |= (pSrc->statistics << 3); - tmp104__ |= (pSrc->LCIMeasurement << 4); - tmp104__ |= (pSrc->LCIAzimuth << 5); - tmp104__ |= (pSrc->TCMCapability << 6); - tmp104__ |= (pSrc->triggeredTCM << 7); - *pBuf = tmp104__; - *pnConsumed += 1; - pBuf += 1; - nBuf -= 1 ; - tmp105__ = 0U; - tmp105__ |= (pSrc->APChanReport << 0); - tmp105__ |= (pSrc->RRMMIBEnabled << 1); - tmp105__ |= (pSrc->operatingChanMax << 2); - tmp105__ |= (pSrc->nonOperatinChanMax << 5); - *pBuf = tmp105__; - *pnConsumed += 1; - pBuf += 1; - nBuf -= 1 ; - tmp106__ = 0U; - tmp106__ |= (pSrc->MeasurementPilot << 0); - tmp106__ |= (pSrc->MeasurementPilotEnabled << 3); - tmp106__ |= (pSrc->NeighborTSFOffset << 4); - tmp106__ |= (pSrc->RCPIMeasurement << 5); - tmp106__ |= (pSrc->RSNIMeasurement << 6); - tmp106__ |= (pSrc->BssAvgAccessDelay << 7); - *pBuf = tmp106__; - *pnConsumed += 1; - pBuf += 1; - nBuf -= 1 ; tmp107__ = 0U; - tmp107__ |= (pSrc->BSSAvailAdmission << 0); - tmp107__ |= (pSrc->AntennaInformation << 1); - tmp107__ |= (pSrc->fine_time_meas_rpt << 2); - tmp107__ |= (pSrc->lci_capability << 3); - tmp107__ |= (pSrc->reserved << 4); + tmp107__ |= (pSrc->LinkMeasurement << 0); + tmp107__ |= (pSrc->NeighborRpt << 1); + tmp107__ |= (pSrc->parallel << 2); + tmp107__ |= (pSrc->repeated << 3); + tmp107__ |= (pSrc->BeaconPassive << 4); + tmp107__ |= (pSrc->BeaconActive << 5); + tmp107__ |= (pSrc->BeaconTable << 6); + tmp107__ |= (pSrc->BeaconRepCond << 7); *pBuf = tmp107__; *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + tmp108__ = 0U; + tmp108__ |= (pSrc->FrameMeasurement << 0); + tmp108__ |= (pSrc->ChannelLoad << 1); + tmp108__ |= (pSrc->NoiseHistogram << 2); + tmp108__ |= (pSrc->statistics << 3); + tmp108__ |= (pSrc->LCIMeasurement << 4); + tmp108__ |= (pSrc->LCIAzimuth << 5); + tmp108__ |= (pSrc->TCMCapability << 6); + tmp108__ |= (pSrc->triggeredTCM << 7); + *pBuf = tmp108__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + tmp109__ = 0U; + tmp109__ |= (pSrc->APChanReport << 0); + tmp109__ |= (pSrc->RRMMIBEnabled << 1); + tmp109__ |= (pSrc->operatingChanMax << 2); + tmp109__ |= (pSrc->nonOperatinChanMax << 5); + *pBuf = tmp109__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + tmp110__ = 0U; + tmp110__ |= (pSrc->MeasurementPilot << 0); + tmp110__ |= (pSrc->MeasurementPilotEnabled << 3); + tmp110__ |= (pSrc->NeighborTSFOffset << 4); + tmp110__ |= (pSrc->RCPIMeasurement << 5); + tmp110__ |= (pSrc->RSNIMeasurement << 6); + tmp110__ |= (pSrc->BssAvgAccessDelay << 7); + *pBuf = tmp110__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + tmp111__ = 0U; + tmp111__ |= (pSrc->BSSAvailAdmission << 0); + tmp111__ |= (pSrc->AntennaInformation << 1); + tmp111__ |= (pSrc->fine_time_meas_rpt << 2); + tmp111__ |= (pSrc->lci_capability << 3); + tmp111__ |= (pSrc->reserved << 4); + *pBuf = tmp111__; + *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; break; @@ -17051,7 +17691,7 @@ uint32_t dot11f_pack_ie_schedule(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp108__; + uint16_t tmp112__; nNeeded += 14; while (pSrc->present) { if (nNeeded > nBuf) @@ -17060,12 +17700,12 @@ uint32_t dot11f_pack_ie_schedule(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp108__ = 0U; - tmp108__ |= (pSrc->aggregation << 0); - tmp108__ |= (pSrc->tsid << 1); - tmp108__ |= (pSrc->direction << 5); - tmp108__ |= (pSrc->reserved << 7); - frameshtons(pCtx, pBuf, tmp108__, 0); + tmp112__ = 0U; + tmp112__ |= (pSrc->aggregation << 0); + tmp112__ |= (pSrc->tsid << 1); + tmp112__ |= (pSrc->direction << 5); + tmp112__ |= (pSrc->reserved << 7); + frameshtons(pCtx, pBuf, tmp112__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -17292,9 +17932,9 @@ uint32_t dot11f_pack_ie_tspec(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp109__; - uint8_t tmp110__; - uint16_t tmp111__; + uint16_t tmp113__; + uint8_t tmp114__; + uint16_t tmp115__; nNeeded += 55; while (pSrc->present) { if (nNeeded > nBuf) @@ -17303,30 +17943,30 @@ uint32_t dot11f_pack_ie_tspec(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp109__ = 0U; - tmp109__ |= (pSrc->traffic_type << 0); - tmp109__ |= (pSrc->tsid << 1); - tmp109__ |= (pSrc->direction << 5); - tmp109__ |= (pSrc->access_policy << 7); - tmp109__ |= (pSrc->aggregation << 9); - tmp109__ |= (pSrc->psb << 10); - tmp109__ |= (pSrc->user_priority << 11); - tmp109__ |= (pSrc->tsinfo_ack_pol << 14); - frameshtons(pCtx, pBuf, tmp109__, 0); + tmp113__ = 0U; + tmp113__ |= (pSrc->traffic_type << 0); + tmp113__ |= (pSrc->tsid << 1); + tmp113__ |= (pSrc->direction << 5); + tmp113__ |= (pSrc->access_policy << 7); + tmp113__ |= (pSrc->aggregation << 9); + tmp113__ |= (pSrc->psb << 10); + tmp113__ |= (pSrc->user_priority << 11); + tmp113__ |= (pSrc->tsinfo_ack_pol << 14); + frameshtons(pCtx, pBuf, tmp113__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; - tmp110__ = 0U; - tmp110__ |= (pSrc->schedule << 0); - tmp110__ |= (pSrc->unused << 1); - *pBuf = tmp110__; + tmp114__ = 0U; + tmp114__ |= (pSrc->schedule << 0); + tmp114__ |= (pSrc->unused << 1); + *pBuf = tmp114__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp111__ = 0U; - tmp111__ |= (pSrc->size << 0); - tmp111__ |= (pSrc->fixed << 15); - frameshtons(pCtx, pBuf, tmp111__, 0); + tmp115__ = 0U; + tmp115__ |= (pSrc->size << 0); + tmp115__ |= (pSrc->fixed << 15); + frameshtons(pCtx, pBuf, tmp115__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -17390,9 +18030,9 @@ uint32_t dot11f_pack_ie_vht_caps(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint32_t tmp112__; - uint16_t tmp113__; - uint16_t tmp114__; + uint32_t tmp116__; + uint16_t tmp117__; + uint16_t tmp118__; nNeeded += 12; while (pSrc->present) { if (nNeeded > nBuf) @@ -17401,48 +18041,48 @@ uint32_t dot11f_pack_ie_vht_caps(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp112__ = 0U; - tmp112__ |= (pSrc->maxMPDULen << 0); - tmp112__ |= (pSrc->supportedChannelWidthSet << 2); - tmp112__ |= (pSrc->ldpcCodingCap << 4); - tmp112__ |= (pSrc->shortGI80MHz << 5); - tmp112__ |= (pSrc->shortGI160and80plus80MHz << 6); - tmp112__ |= (pSrc->txSTBC << 7); - tmp112__ |= (pSrc->rxSTBC << 8); - tmp112__ |= (pSrc->suBeamFormerCap << 11); - tmp112__ |= (pSrc->suBeamformeeCap << 12); - tmp112__ |= (pSrc->csnofBeamformerAntSup << 13); - tmp112__ |= (pSrc->numSoundingDim << 16); - tmp112__ |= (pSrc->muBeamformerCap << 19); - tmp112__ |= (pSrc->muBeamformeeCap << 20); - tmp112__ |= (pSrc->vhtTXOPPS << 21); - tmp112__ |= (pSrc->htcVHTCap << 22); - tmp112__ |= (pSrc->maxAMPDULenExp << 23); - tmp112__ |= (pSrc->vhtLinkAdaptCap << 26); - tmp112__ |= (pSrc->rxAntPattern << 28); - tmp112__ |= (pSrc->txAntPattern << 29); - tmp112__ |= (pSrc->reserved1 << 30); - frameshtonl(pCtx, pBuf, tmp112__, 0); + tmp116__ = 0U; + tmp116__ |= (pSrc->maxMPDULen << 0); + tmp116__ |= (pSrc->supportedChannelWidthSet << 2); + tmp116__ |= (pSrc->ldpcCodingCap << 4); + tmp116__ |= (pSrc->shortGI80MHz << 5); + tmp116__ |= (pSrc->shortGI160and80plus80MHz << 6); + tmp116__ |= (pSrc->txSTBC << 7); + tmp116__ |= (pSrc->rxSTBC << 8); + tmp116__ |= (pSrc->suBeamFormerCap << 11); + tmp116__ |= (pSrc->suBeamformeeCap << 12); + tmp116__ |= (pSrc->csnofBeamformerAntSup << 13); + tmp116__ |= (pSrc->numSoundingDim << 16); + tmp116__ |= (pSrc->muBeamformerCap << 19); + tmp116__ |= (pSrc->muBeamformeeCap << 20); + tmp116__ |= (pSrc->vhtTXOPPS << 21); + tmp116__ |= (pSrc->htcVHTCap << 22); + tmp116__ |= (pSrc->maxAMPDULenExp << 23); + tmp116__ |= (pSrc->vhtLinkAdaptCap << 26); + tmp116__ |= (pSrc->rxAntPattern << 28); + tmp116__ |= (pSrc->txAntPattern << 29); + tmp116__ |= (pSrc->reserved1 << 30); + frameshtonl(pCtx, pBuf, tmp116__, 0); *pnConsumed += 4; pBuf += 4; nBuf -= 4 ; frameshtons(pCtx, pBuf, pSrc->rxMCSMap, 0); *pnConsumed += 2; pBuf += 2; - tmp113__ = 0U; - tmp113__ |= (pSrc->rxHighSupDataRate << 0); - tmp113__ |= (pSrc->reserved2 << 13); - frameshtons(pCtx, pBuf, tmp113__, 0); + tmp117__ = 0U; + tmp117__ |= (pSrc->rxHighSupDataRate << 0); + tmp117__ |= (pSrc->reserved2 << 13); + frameshtons(pCtx, pBuf, tmp117__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; frameshtons(pCtx, pBuf, pSrc->txMCSMap, 0); *pnConsumed += 2; pBuf += 2; - tmp114__ = 0U; - tmp114__ |= (pSrc->txSupDataRate << 0); - tmp114__ |= (pSrc->reserved3 << 13); - frameshtons(pCtx, pBuf, tmp114__, 0); + tmp118__ = 0U; + tmp118__ |= (pSrc->txSupDataRate << 0); + tmp118__ |= (pSrc->reserved3 << 13); + frameshtons(pCtx, pBuf, tmp118__, 0); *pnConsumed += 2; /* fieldsEndFlag = 1 */ nBuf -= 2 ; @@ -17502,7 +18142,7 @@ uint32_t dot11f_pack_ie_wmm_schedule(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp115__; + uint16_t tmp119__; nNeeded += 15; while (pSrc->present) { if (nNeeded > nBuf) @@ -17524,12 +18164,12 @@ uint32_t dot11f_pack_ie_wmm_schedule(tpAniSirGlobal pCtx, *pBuf = pSrc->version; *pnConsumed += 1; pBuf += 1; - tmp115__ = 0U; - tmp115__ |= (pSrc->aggregation << 0); - tmp115__ |= (pSrc->tsid << 1); - tmp115__ |= (pSrc->direction << 5); - tmp115__ |= (pSrc->reserved << 7); - frameshtons(pCtx, pBuf, tmp115__, 0); + tmp119__ = 0U; + tmp119__ |= (pSrc->aggregation << 0); + tmp119__ |= (pSrc->tsid << 1); + tmp119__ |= (pSrc->direction << 5); + tmp119__ |= (pSrc->reserved << 7); + frameshtons(pCtx, pBuf, tmp119__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -17763,9 +18403,9 @@ uint32_t dot11f_pack_ie_wmmtspec(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp116__; - uint8_t tmp117__; - uint16_t tmp118__; + uint16_t tmp120__; + uint8_t tmp121__; + uint16_t tmp122__; nNeeded += 38; while (pSrc->present) { if (nNeeded > nBuf) @@ -17787,30 +18427,30 @@ uint32_t dot11f_pack_ie_wmmtspec(tpAniSirGlobal pCtx, *pBuf = pSrc->version; *pnConsumed += 1; pBuf += 1; - tmp116__ = 0U; - tmp116__ |= (pSrc->traffic_type << 0); - tmp116__ |= (pSrc->tsid << 1); - tmp116__ |= (pSrc->direction << 5); - tmp116__ |= (pSrc->access_policy << 7); - tmp116__ |= (pSrc->aggregation << 9); - tmp116__ |= (pSrc->psb << 10); - tmp116__ |= (pSrc->user_priority << 11); - tmp116__ |= (pSrc->tsinfo_ack_pol << 14); - frameshtons(pCtx, pBuf, tmp116__, 0); + tmp120__ = 0U; + tmp120__ |= (pSrc->traffic_type << 0); + tmp120__ |= (pSrc->tsid << 1); + tmp120__ |= (pSrc->direction << 5); + tmp120__ |= (pSrc->access_policy << 7); + tmp120__ |= (pSrc->aggregation << 9); + tmp120__ |= (pSrc->psb << 10); + tmp120__ |= (pSrc->user_priority << 11); + tmp120__ |= (pSrc->tsinfo_ack_pol << 14); + frameshtons(pCtx, pBuf, tmp120__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; - tmp117__ = 0U; - tmp117__ |= (pSrc->tsinfo_rsvd << 0); - tmp117__ |= (pSrc->burst_size_defn << 7); - *pBuf = tmp117__; + tmp121__ = 0U; + tmp121__ |= (pSrc->tsinfo_rsvd << 0); + tmp121__ |= (pSrc->burst_size_defn << 7); + *pBuf = tmp121__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp118__ = 0U; - tmp118__ |= (pSrc->size << 0); - tmp118__ |= (pSrc->fixed << 15); - frameshtons(pCtx, pBuf, tmp118__, 0); + tmp122__ = 0U; + tmp122__ |= (pSrc->size << 0); + tmp122__ |= (pSrc->fixed << 15); + frameshtons(pCtx, pBuf, tmp122__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -17967,8 +18607,8 @@ uint32_t dot11f_pack_ie_neighbor_rpt(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp119__; - uint8_t tmp120__; + uint8_t tmp123__; + uint8_t tmp124__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_neighbor_rpt(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -17983,24 +18623,24 @@ uint32_t dot11f_pack_ie_neighbor_rpt(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pBuf, pSrc->bssid, 6); *pnConsumed += 6; pBuf += 6; - tmp119__ = 0U; - tmp119__ |= (pSrc->APReachability << 0); - tmp119__ |= (pSrc->Security << 2); - tmp119__ |= (pSrc->KeyScope << 3); - tmp119__ |= (pSrc->SpecMgmtCap << 4); - tmp119__ |= (pSrc->QosCap << 5); - tmp119__ |= (pSrc->apsd << 6); - tmp119__ |= (pSrc->rrm << 7); - *pBuf = tmp119__; + tmp123__ = 0U; + tmp123__ |= (pSrc->APReachability << 0); + tmp123__ |= (pSrc->Security << 2); + tmp123__ |= (pSrc->KeyScope << 3); + tmp123__ |= (pSrc->SpecMgmtCap << 4); + tmp123__ |= (pSrc->QosCap << 5); + tmp123__ |= (pSrc->apsd << 6); + tmp123__ |= (pSrc->rrm << 7); + *pBuf = tmp123__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp120__ = 0U; - tmp120__ |= (pSrc->DelayedBA << 0); - tmp120__ |= (pSrc->ImmBA << 1); - tmp120__ |= (pSrc->MobilityDomain << 2); - tmp120__ |= (pSrc->reserved << 3); - *pBuf = tmp120__; + tmp124__ = 0U; + tmp124__ |= (pSrc->DelayedBA << 0); + tmp124__ |= (pSrc->ImmBA << 1); + tmp124__ |= (pSrc->MobilityDomain << 2); + tmp124__ |= (pSrc->reserved << 3); + *pBuf = tmp124__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -18398,14 +19038,14 @@ uint32_t dot11f_pack_ie_edca_param_set(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp121__; - uint8_t tmp122__; - uint8_t tmp123__; - uint8_t tmp124__; uint8_t tmp125__; uint8_t tmp126__; uint8_t tmp127__; uint8_t tmp128__; + uint8_t tmp129__; + uint8_t tmp130__; + uint8_t tmp131__; + uint8_t tmp132__; nNeeded += 18; while (pSrc->present) { if (nNeeded > nBuf) @@ -18420,76 +19060,76 @@ uint32_t dot11f_pack_ie_edca_param_set(tpAniSirGlobal pCtx, *pBuf = pSrc->reserved; *pnConsumed += 1; pBuf += 1; - tmp121__ = 0U; - tmp121__ |= (pSrc->acbe_aifsn << 0); - tmp121__ |= (pSrc->acbe_acm << 4); - tmp121__ |= (pSrc->acbe_aci << 5); - tmp121__ |= (pSrc->unused1 << 7); - *pBuf = tmp121__; + tmp125__ = 0U; + tmp125__ |= (pSrc->acbe_aifsn << 0); + tmp125__ |= (pSrc->acbe_acm << 4); + tmp125__ |= (pSrc->acbe_aci << 5); + tmp125__ |= (pSrc->unused1 << 7); + *pBuf = tmp125__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp122__ = 0U; - tmp122__ |= (pSrc->acbe_acwmin << 0); - tmp122__ |= (pSrc->acbe_acwmax << 4); - *pBuf = tmp122__; + tmp126__ = 0U; + tmp126__ |= (pSrc->acbe_acwmin << 0); + tmp126__ |= (pSrc->acbe_acwmax << 4); + *pBuf = tmp126__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acbe_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp123__ = 0U; - tmp123__ |= (pSrc->acbk_aifsn << 0); - tmp123__ |= (pSrc->acbk_acm << 4); - tmp123__ |= (pSrc->acbk_aci << 5); - tmp123__ |= (pSrc->unused2 << 7); - *pBuf = tmp123__; + tmp127__ = 0U; + tmp127__ |= (pSrc->acbk_aifsn << 0); + tmp127__ |= (pSrc->acbk_acm << 4); + tmp127__ |= (pSrc->acbk_aci << 5); + tmp127__ |= (pSrc->unused2 << 7); + *pBuf = tmp127__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp124__ = 0U; - tmp124__ |= (pSrc->acbk_acwmin << 0); - tmp124__ |= (pSrc->acbk_acwmax << 4); - *pBuf = tmp124__; + tmp128__ = 0U; + tmp128__ |= (pSrc->acbk_acwmin << 0); + tmp128__ |= (pSrc->acbk_acwmax << 4); + *pBuf = tmp128__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acbk_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp125__ = 0U; - tmp125__ |= (pSrc->acvi_aifsn << 0); - tmp125__ |= (pSrc->acvi_acm << 4); - tmp125__ |= (pSrc->acvi_aci << 5); - tmp125__ |= (pSrc->unused3 << 7); - *pBuf = tmp125__; + tmp129__ = 0U; + tmp129__ |= (pSrc->acvi_aifsn << 0); + tmp129__ |= (pSrc->acvi_acm << 4); + tmp129__ |= (pSrc->acvi_aci << 5); + tmp129__ |= (pSrc->unused3 << 7); + *pBuf = tmp129__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp126__ = 0U; - tmp126__ |= (pSrc->acvi_acwmin << 0); - tmp126__ |= (pSrc->acvi_acwmax << 4); - *pBuf = tmp126__; + tmp130__ = 0U; + tmp130__ |= (pSrc->acvi_acwmin << 0); + tmp130__ |= (pSrc->acvi_acwmax << 4); + *pBuf = tmp130__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acvi_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp127__ = 0U; - tmp127__ |= (pSrc->acvo_aifsn << 0); - tmp127__ |= (pSrc->acvo_acm << 4); - tmp127__ |= (pSrc->acvo_aci << 5); - tmp127__ |= (pSrc->unused4 << 7); - *pBuf = tmp127__; + tmp131__ = 0U; + tmp131__ |= (pSrc->acvo_aifsn << 0); + tmp131__ |= (pSrc->acvo_acm << 4); + tmp131__ |= (pSrc->acvo_aci << 5); + tmp131__ |= (pSrc->unused4 << 7); + *pBuf = tmp131__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp128__ = 0U; - tmp128__ |= (pSrc->acvo_acwmin << 0); - tmp128__ |= (pSrc->acvo_acwmax << 4); - *pBuf = tmp128__; + tmp132__ = 0U; + tmp132__ |= (pSrc->acvo_acwmin << 0); + tmp132__ |= (pSrc->acvo_acwmax << 4); + *pBuf = tmp132__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -18514,7 +19154,7 @@ uint32_t dot11f_pack_ie_erp_info(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp129__; + uint8_t tmp133__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -18523,12 +19163,12 @@ uint32_t dot11f_pack_ie_erp_info(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp129__ = 0U; - tmp129__ |= (pSrc->non_erp_present << 0); - tmp129__ |= (pSrc->use_prot << 1); - tmp129__ |= (pSrc->barker_preamble << 2); - tmp129__ |= (pSrc->unused << 3); - *pBuf = tmp129__; + tmp133__ = 0U; + tmp133__ |= (pSrc->non_erp_present << 0); + tmp133__ |= (pSrc->use_prot << 1); + tmp133__ |= (pSrc->barker_preamble << 2); + tmp133__ |= (pSrc->unused << 3); + *pBuf = tmp133__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -18587,7 +19227,7 @@ uint32_t dot11f_pack_ie_ese_rad_mgmt_cap(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp130__; + uint8_t tmp134__; nNeeded += 2; while (pSrc->present) { if (nNeeded > nBuf) @@ -18607,10 +19247,10 @@ uint32_t dot11f_pack_ie_ese_rad_mgmt_cap(tpAniSirGlobal pCtx, *pBuf = pSrc->mgmt_state; *pnConsumed += 1; pBuf += 1; - tmp130__ = 0U; - tmp130__ |= (pSrc->mbssid_mask << 0); - tmp130__ |= (pSrc->reserved << 3); - *pBuf = tmp130__; + tmp134__ = 0U; + tmp134__ |= (pSrc->mbssid_mask << 0); + tmp134__ |= (pSrc->reserved << 3); + *pBuf = tmp134__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -18961,7 +19601,7 @@ uint32_t dot11f_pack_ie_ft_info(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp131__; + uint16_t tmp135__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ieft_info(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -18973,10 +19613,10 @@ uint32_t dot11f_pack_ie_ft_info(tpAniSirGlobal pCtx, ++pBuf; --nBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; --nBuf; ++(*pnConsumed); - tmp131__ = 0U; - tmp131__ |= (pSrc->reserved << 0); - tmp131__ |= (pSrc->IECount << 8); - frameshtons(pCtx, pBuf, tmp131__, 0); + tmp135__ = 0U; + tmp135__ |= (pSrc->reserved << 0); + tmp135__ |= (pSrc->IECount << 8); + frameshtons(pCtx, pBuf, tmp135__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -19014,11 +19654,11 @@ uint32_t dot11f_pack_ie_ht_caps(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp132__; - uint8_t tmp133__; - uint16_t tmp134__; - uint32_t tmp135__; - uint8_t tmp136__; + uint16_t tmp136__; + uint8_t tmp137__; + uint16_t tmp138__; + uint32_t tmp139__; + uint8_t tmp140__; nNeeded += (pSrc->num_rsvd + 26); while (pSrc->present) { if (nNeeded > nBuf) @@ -19027,77 +19667,77 @@ uint32_t dot11f_pack_ie_ht_caps(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp132__ = 0U; - tmp132__ |= (pSrc->advCodingCap << 0); - tmp132__ |= (pSrc->supportedChannelWidthSet << 1); - tmp132__ |= (pSrc->mimoPowerSave << 2); - tmp132__ |= (pSrc->greenField << 4); - tmp132__ |= (pSrc->shortGI20MHz << 5); - tmp132__ |= (pSrc->shortGI40MHz << 6); - tmp132__ |= (pSrc->txSTBC << 7); - tmp132__ |= (pSrc->rxSTBC << 8); - tmp132__ |= (pSrc->delayedBA << 10); - tmp132__ |= (pSrc->maximalAMSDUsize << 11); - tmp132__ |= (pSrc->dsssCckMode40MHz << 12); - tmp132__ |= (pSrc->psmp << 13); - tmp132__ |= (pSrc->stbcControlFrame << 14); - tmp132__ |= (pSrc->lsigTXOPProtection << 15); - frameshtons(pCtx, pBuf, tmp132__, 0); + tmp136__ = 0U; + tmp136__ |= (pSrc->advCodingCap << 0); + tmp136__ |= (pSrc->supportedChannelWidthSet << 1); + tmp136__ |= (pSrc->mimoPowerSave << 2); + tmp136__ |= (pSrc->greenField << 4); + tmp136__ |= (pSrc->shortGI20MHz << 5); + tmp136__ |= (pSrc->shortGI40MHz << 6); + tmp136__ |= (pSrc->txSTBC << 7); + tmp136__ |= (pSrc->rxSTBC << 8); + tmp136__ |= (pSrc->delayedBA << 10); + tmp136__ |= (pSrc->maximalAMSDUsize << 11); + tmp136__ |= (pSrc->dsssCckMode40MHz << 12); + tmp136__ |= (pSrc->psmp << 13); + tmp136__ |= (pSrc->stbcControlFrame << 14); + tmp136__ |= (pSrc->lsigTXOPProtection << 15); + frameshtons(pCtx, pBuf, tmp136__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; - tmp133__ = 0U; - tmp133__ |= (pSrc->maxRxAMPDUFactor << 0); - tmp133__ |= (pSrc->mpduDensity << 2); - tmp133__ |= (pSrc->reserved1 << 5); - *pBuf = tmp133__; + tmp137__ = 0U; + tmp137__ |= (pSrc->maxRxAMPDUFactor << 0); + tmp137__ |= (pSrc->mpduDensity << 2); + tmp137__ |= (pSrc->reserved1 << 5); + *pBuf = tmp137__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; DOT11F_MEMCPY(pCtx, pBuf, pSrc->supportedMCSSet, 16); *pnConsumed += 16; pBuf += 16; - tmp134__ = 0U; - tmp134__ |= (pSrc->pco << 0); - tmp134__ |= (pSrc->transitionTime << 1); - tmp134__ |= (pSrc->reserved2 << 3); - tmp134__ |= (pSrc->mcsFeedback << 8); - tmp134__ |= (pSrc->reserved3 << 10); - frameshtons(pCtx, pBuf, tmp134__, 0); + tmp138__ = 0U; + tmp138__ |= (pSrc->pco << 0); + tmp138__ |= (pSrc->transitionTime << 1); + tmp138__ |= (pSrc->reserved2 << 3); + tmp138__ |= (pSrc->mcsFeedback << 8); + tmp138__ |= (pSrc->reserved3 << 10); + frameshtons(pCtx, pBuf, tmp138__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; - tmp135__ = 0U; - tmp135__ |= (pSrc->txBF << 0); - tmp135__ |= (pSrc->rxStaggeredSounding << 1); - tmp135__ |= (pSrc->txStaggeredSounding << 2); - tmp135__ |= (pSrc->rxZLF << 3); - tmp135__ |= (pSrc->txZLF << 4); - tmp135__ |= (pSrc->implicitTxBF << 5); - tmp135__ |= (pSrc->calibration << 6); - tmp135__ |= (pSrc->explicitCSITxBF << 8); - tmp135__ |= (pSrc->explicitUncompressedSteeringMatrix << 9); - tmp135__ |= (pSrc->explicitBFCSIFeedback << 10); - tmp135__ |= (pSrc->explicitUncompressedSteeringMatrixFeedback << 13); - tmp135__ |= (pSrc->explicitCompressedSteeringMatrixFeedback << 16); - tmp135__ |= (pSrc->csiNumBFAntennae << 19); - tmp135__ |= (pSrc->uncompressedSteeringMatrixBFAntennae << 21); - tmp135__ |= (pSrc->compressedSteeringMatrixBFAntennae << 23); - tmp135__ |= (pSrc->reserved4 << 25); - frameshtonl(pCtx, pBuf, tmp135__, 0); + tmp139__ = 0U; + tmp139__ |= (pSrc->txBF << 0); + tmp139__ |= (pSrc->rxStaggeredSounding << 1); + tmp139__ |= (pSrc->txStaggeredSounding << 2); + tmp139__ |= (pSrc->rxZLF << 3); + tmp139__ |= (pSrc->txZLF << 4); + tmp139__ |= (pSrc->implicitTxBF << 5); + tmp139__ |= (pSrc->calibration << 6); + tmp139__ |= (pSrc->explicitCSITxBF << 8); + tmp139__ |= (pSrc->explicitUncompressedSteeringMatrix << 9); + tmp139__ |= (pSrc->explicitBFCSIFeedback << 10); + tmp139__ |= (pSrc->explicitUncompressedSteeringMatrixFeedback << 13); + tmp139__ |= (pSrc->explicitCompressedSteeringMatrixFeedback << 16); + tmp139__ |= (pSrc->csiNumBFAntennae << 19); + tmp139__ |= (pSrc->uncompressedSteeringMatrixBFAntennae << 21); + tmp139__ |= (pSrc->compressedSteeringMatrixBFAntennae << 23); + tmp139__ |= (pSrc->reserved4 << 25); + frameshtonl(pCtx, pBuf, tmp139__, 0); *pnConsumed += 4; pBuf += 4; nBuf -= 4 ; - tmp136__ = 0U; - tmp136__ |= (pSrc->antennaSelection << 0); - tmp136__ |= (pSrc->explicitCSIFeedbackTx << 1); - tmp136__ |= (pSrc->antennaIndicesFeedbackTx << 2); - tmp136__ |= (pSrc->explicitCSIFeedback << 3); - tmp136__ |= (pSrc->antennaIndicesFeedback << 4); - tmp136__ |= (pSrc->rxAS << 5); - tmp136__ |= (pSrc->txSoundingPPDUs << 6); - tmp136__ |= (pSrc->reserved5 << 7); - *pBuf = tmp136__; + tmp140__ = 0U; + tmp140__ |= (pSrc->antennaSelection << 0); + tmp140__ |= (pSrc->explicitCSIFeedbackTx << 1); + tmp140__ |= (pSrc->antennaIndicesFeedbackTx << 2); + tmp140__ |= (pSrc->explicitCSIFeedback << 3); + tmp140__ |= (pSrc->antennaIndicesFeedback << 4); + tmp140__ |= (pSrc->rxAS << 5); + tmp140__ |= (pSrc->txSoundingPPDUs << 6); + tmp140__ |= (pSrc->reserved5 << 7); + *pBuf = tmp140__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -19122,9 +19762,9 @@ uint32_t dot11f_pack_ie_ht_info(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp137__; - uint16_t tmp138__; - uint16_t tmp139__; + uint8_t tmp141__; + uint16_t tmp142__; + uint16_t tmp143__; nNeeded += (pSrc->num_rsvd + 22); while (pSrc->present) { if (nNeeded > nBuf) @@ -19136,35 +19776,35 @@ uint32_t dot11f_pack_ie_ht_info(tpAniSirGlobal pCtx, *pBuf = pSrc->primaryChannel; *pnConsumed += 1; pBuf += 1; - tmp137__ = 0U; - tmp137__ |= (pSrc->secondaryChannelOffset << 0); - tmp137__ |= (pSrc->recommendedTxWidthSet << 2); - tmp137__ |= (pSrc->rifsMode << 3); - tmp137__ |= (pSrc->controlledAccessOnly << 4); - tmp137__ |= (pSrc->serviceIntervalGranularity << 5); - *pBuf = tmp137__; + tmp141__ = 0U; + tmp141__ |= (pSrc->secondaryChannelOffset << 0); + tmp141__ |= (pSrc->recommendedTxWidthSet << 2); + tmp141__ |= (pSrc->rifsMode << 3); + tmp141__ |= (pSrc->controlledAccessOnly << 4); + tmp141__ |= (pSrc->serviceIntervalGranularity << 5); + *pBuf = tmp141__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp138__ = 0U; - tmp138__ |= (pSrc->opMode << 0); - tmp138__ |= (pSrc->nonGFDevicesPresent << 2); - tmp138__ |= (pSrc->transmitBurstLimit << 3); - tmp138__ |= (pSrc->obssNonHTStaPresent << 4); - tmp138__ |= (pSrc->reserved << 5); - frameshtons(pCtx, pBuf, tmp138__, 0); + tmp142__ = 0U; + tmp142__ |= (pSrc->opMode << 0); + tmp142__ |= (pSrc->nonGFDevicesPresent << 2); + tmp142__ |= (pSrc->transmitBurstLimit << 3); + tmp142__ |= (pSrc->obssNonHTStaPresent << 4); + tmp142__ |= (pSrc->reserved << 5); + frameshtons(pCtx, pBuf, tmp142__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; - tmp139__ = 0U; - tmp139__ |= (pSrc->basicSTBCMCS << 0); - tmp139__ |= (pSrc->dualCTSProtection << 7); - tmp139__ |= (pSrc->secondaryBeacon << 8); - tmp139__ |= (pSrc->lsigTXOPProtectionFullSupport << 9); - tmp139__ |= (pSrc->pcoActive << 10); - tmp139__ |= (pSrc->pcoPhase << 11); - tmp139__ |= (pSrc->reserved2 << 12); - frameshtons(pCtx, pBuf, tmp139__, 0); + tmp143__ = 0U; + tmp143__ |= (pSrc->basicSTBCMCS << 0); + tmp143__ |= (pSrc->dualCTSProtection << 7); + tmp143__ |= (pSrc->secondaryBeacon << 8); + tmp143__ |= (pSrc->lsigTXOPProtectionFullSupport << 9); + tmp143__ |= (pSrc->pcoActive << 10); + tmp143__ |= (pSrc->pcoPhase << 11); + tmp143__ |= (pSrc->reserved2 << 12); + frameshtons(pCtx, pBuf, tmp143__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -19254,37 +19894,45 @@ uint32_t dot11f_pack_ie_MBO_IE(tpAniSirGlobal pCtx, uint32_t *pnConsumed) { uint8_t *pIeLen = 0; - uint32_t nConsumedOnEntry = *pnConsumed; + uint32_t n, idx = 0, idxlast; + uint32_t nConsumedSoFar, nConsumedNow; + uint32_t status = DOT11F_PARSE_SUCCESS; uint32_t nNeeded = 0U; - nNeeded += (pSrc->num_assoc_disallowed + 3); - while (pSrc->present) { - if (nNeeded > nBuf) - return DOT11F_BUFFER_OVERFLOW; - *pBuf = 221; - ++pBuf; ++(*pnConsumed); - pIeLen = pBuf; - ++pBuf; ++(*pnConsumed); - *pBuf = 0x50; - ++pBuf; ++(*pnConsumed); - *pBuf = 0x6f; - ++pBuf; ++(*pnConsumed); - *pBuf = 0x9a; - ++pBuf; ++(*pnConsumed); - *pBuf = 0x16; - ++pBuf; ++(*pnConsumed); - DOT11F_MEMCPY(pCtx, pBuf, pSrc->mbo_cap, 3); - *pnConsumed += 3; - pBuf += 3; - DOT11F_MEMCPY(pCtx, pBuf, &(pSrc->assoc_disallowed), pSrc->num_assoc_disallowed); - *pnConsumed += pSrc->num_assoc_disallowed; - /* fieldsEndFlag = 1 */ - break; - } + status = dot11f_get_packed_ie_MBO_IE(pCtx, pSrc, &nNeeded); + if (!DOT11F_SUCCEEDED(status)) + return status; + if (nNeeded > nBuf) + return DOT11F_BUFFER_OVERFLOW; (void)pCtx; - if (pIeLen) { - *pIeLen = *pnConsumed - nConsumedOnEntry - 2; + if (pSrc->present) { + do { + nConsumedSoFar = *pnConsumed; + *pBuf = 221; + ++pBuf; --nBuf; ++(*pnConsumed); + pIeLen = pBuf; + ++pBuf; --nBuf; ++(*pnConsumed); + *pBuf = 0x50; + ++pBuf; --nBuf; ++(*pnConsumed); + *pBuf = 0x6f; + ++pBuf; --nBuf; ++(*pnConsumed); + *pBuf = 0x9a; + ++pBuf; --nBuf; ++(*pnConsumed); + *pBuf = 0x16; + ++pBuf; --nBuf; ++(*pnConsumed); + n = (255 - 4) < nBuf ? (255 - 4) : nBuf; + nConsumedNow = *pnConsumed; + idxlast = idx; + status = pack_tlv_core(pCtx, (uint8_t *)pSrc, pBuf, n, + pnConsumed, + TLVS_MBO_IE + + idx, &idx); + nConsumedNow = *pnConsumed - nConsumedNow; + *pIeLen = *pnConsumed - nConsumedSoFar - 2; + pBuf += nConsumedNow; + nBuf -= nConsumedNow; + } while (DOT11F_BUFFER_OVERFLOW == status && idxlast != idx); } - return DOT11F_PARSE_SUCCESS; + return status; } /* End dot11f_pack_ie_MBO_IE. */ uint32_t dot11f_pack_ie_measurement_report(tpAniSirGlobal pCtx, @@ -19296,9 +19944,9 @@ uint32_t dot11f_pack_ie_measurement_report(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp140__; - uint8_t tmp141__; - uint8_t tmp142__; + uint8_t tmp144__; + uint8_t tmp145__; + uint8_t tmp146__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_measurement_report(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -19313,12 +19961,12 @@ uint32_t dot11f_pack_ie_measurement_report(tpAniSirGlobal pCtx, *pBuf = pSrc->token; *pnConsumed += 1; pBuf += 1; - tmp140__ = 0U; - tmp140__ |= (pSrc->late << 0); - tmp140__ |= (pSrc->incapable << 1); - tmp140__ |= (pSrc->refused << 2); - tmp140__ |= (pSrc->unused << 3); - *pBuf = tmp140__; + tmp144__ = 0U; + tmp144__ |= (pSrc->late << 0); + tmp144__ |= (pSrc->incapable << 1); + tmp144__ |= (pSrc->refused << 2); + tmp144__ |= (pSrc->unused << 3); + *pBuf = tmp144__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -19337,14 +19985,14 @@ uint32_t dot11f_pack_ie_measurement_report(tpAniSirGlobal pCtx, frameshtons(pCtx, pBuf, pSrc->report.Basic.meas_duration, 0); *pnConsumed += 2; pBuf += 2; - tmp141__ = 0U; - tmp141__ |= (pSrc->report.Basic.bss << 0); - tmp141__ |= (pSrc->report.Basic.ofdm_preamble << 1); - tmp141__ |= (pSrc->report.Basic.unid_signal << 2); - tmp141__ |= (pSrc->report.Basic.rader << 3); - tmp141__ |= (pSrc->report.Basic.unmeasured << 4); - tmp141__ |= (pSrc->report.Basic.unused << 5); - *pBuf = tmp141__; + tmp145__ = 0U; + tmp145__ |= (pSrc->report.Basic.bss << 0); + tmp145__ |= (pSrc->report.Basic.ofdm_preamble << 1); + tmp145__ |= (pSrc->report.Basic.unid_signal << 2); + tmp145__ |= (pSrc->report.Basic.rader << 3); + tmp145__ |= (pSrc->report.Basic.unmeasured << 4); + tmp145__ |= (pSrc->report.Basic.unused << 5); + *pBuf = tmp145__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -19411,10 +20059,10 @@ uint32_t dot11f_pack_ie_measurement_report(tpAniSirGlobal pCtx, frameshtons(pCtx, pBuf, pSrc->report.Beacon.meas_duration, 0); *pnConsumed += 2; pBuf += 2; - tmp142__ = 0U; - tmp142__ |= (pSrc->report.Beacon.condensed_PHY << 0); - tmp142__ |= (pSrc->report.Beacon.reported_frame_type << 7); - *pBuf = tmp142__; + tmp146__ = 0U; + tmp146__ |= (pSrc->report.Beacon.condensed_PHY << 0); + tmp146__ |= (pSrc->report.Beacon.reported_frame_type << 7); + *pBuf = tmp146__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -19463,7 +20111,7 @@ uint32_t dot11f_pack_ie_measurement_request(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp143__; + uint8_t tmp147__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_measurement_request(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -19478,14 +20126,14 @@ uint32_t dot11f_pack_ie_measurement_request(tpAniSirGlobal pCtx, *pBuf = pSrc->measurement_token; *pnConsumed += 1; pBuf += 1; - tmp143__ = 0U; - tmp143__ |= (pSrc->parallel << 0); - tmp143__ |= (pSrc->enable << 1); - tmp143__ |= (pSrc->request << 2); - tmp143__ |= (pSrc->report << 3); - tmp143__ |= (pSrc->durationMandatory << 4); - tmp143__ |= (pSrc->unused << 5); - *pBuf = tmp143__; + tmp147__ = 0U; + tmp147__ |= (pSrc->parallel << 0); + tmp147__ |= (pSrc->enable << 1); + tmp147__ |= (pSrc->request << 2); + tmp147__ |= (pSrc->report << 3); + tmp147__ |= (pSrc->durationMandatory << 4); + tmp147__ |= (pSrc->unused << 5); + *pBuf = tmp147__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -19599,7 +20247,7 @@ uint32_t dot11f_pack_ie_mobility_domain(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp144__; + uint8_t tmp148__; nNeeded += 3; while (pSrc->present) { if (nNeeded > nBuf) @@ -19611,11 +20259,11 @@ uint32_t dot11f_pack_ie_mobility_domain(tpAniSirGlobal pCtx, frameshtons(pCtx, pBuf, pSrc->MDID, 0); *pnConsumed += 2; pBuf += 2; - tmp144__ = 0U; - tmp144__ |= (pSrc->overDSCap << 0); - tmp144__ |= (pSrc->resourceReqCap << 1); - tmp144__ |= (pSrc->reserved << 2); - *pBuf = tmp144__; + tmp148__ = 0U; + tmp148__ |= (pSrc->overDSCap << 0); + tmp148__ |= (pSrc->resourceReqCap << 1); + tmp148__ |= (pSrc->reserved << 2); + *pBuf = tmp148__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -19637,8 +20285,8 @@ uint32_t dot11f_pack_ie_neighbor_report(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp145__; - uint8_t tmp146__; + uint8_t tmp149__; + uint8_t tmp150__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_neighbor_report(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -19653,24 +20301,24 @@ uint32_t dot11f_pack_ie_neighbor_report(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pBuf, pSrc->bssid, 6); *pnConsumed += 6; pBuf += 6; - tmp145__ = 0U; - tmp145__ |= (pSrc->APReachability << 0); - tmp145__ |= (pSrc->Security << 2); - tmp145__ |= (pSrc->KeyScope << 3); - tmp145__ |= (pSrc->SpecMgmtCap << 4); - tmp145__ |= (pSrc->QosCap << 5); - tmp145__ |= (pSrc->apsd << 6); - tmp145__ |= (pSrc->rrm << 7); - *pBuf = tmp145__; + tmp149__ = 0U; + tmp149__ |= (pSrc->APReachability << 0); + tmp149__ |= (pSrc->Security << 2); + tmp149__ |= (pSrc->KeyScope << 3); + tmp149__ |= (pSrc->SpecMgmtCap << 4); + tmp149__ |= (pSrc->QosCap << 5); + tmp149__ |= (pSrc->apsd << 6); + tmp149__ |= (pSrc->rrm << 7); + *pBuf = tmp149__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp146__ = 0U; - tmp146__ |= (pSrc->DelayedBA << 0); - tmp146__ |= (pSrc->ImmBA << 1); - tmp146__ |= (pSrc->MobilityDomain << 2); - tmp146__ |= (pSrc->reserved << 3); - *pBuf = tmp146__; + tmp150__ = 0U; + tmp150__ |= (pSrc->DelayedBA << 0); + tmp150__ |= (pSrc->ImmBA << 1); + tmp150__ |= (pSrc->MobilityDomain << 2); + tmp150__ |= (pSrc->reserved << 3); + *pBuf = tmp150__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -19758,7 +20406,7 @@ uint32_t dot11f_pack_ie_operating_mode(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp147__; + uint8_t tmp151__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -19767,12 +20415,12 @@ uint32_t dot11f_pack_ie_operating_mode(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp147__ = 0U; - tmp147__ |= (pSrc->chanWidth << 0); - tmp147__ |= (pSrc->reserved << 2); - tmp147__ |= (pSrc->rxNSS << 4); - tmp147__ |= (pSrc->rxNSSType << 7); - *pBuf = tmp147__; + tmp151__ = 0U; + tmp151__ |= (pSrc->chanWidth << 0); + tmp151__ |= (pSrc->reserved << 2); + tmp151__ |= (pSrc->rxNSS << 4); + tmp151__ |= (pSrc->rxNSSType << 7); + *pBuf = tmp151__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -20247,7 +20895,7 @@ uint32_t dot11f_pack_ie_pu_buffer_status(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp148__; + uint8_t tmp152__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -20256,13 +20904,13 @@ uint32_t dot11f_pack_ie_pu_buffer_status(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp148__ = 0U; - tmp148__ |= (pSrc->ac_bk_traffic_aval << 0); - tmp148__ |= (pSrc->ac_be_traffic_aval << 1); - tmp148__ |= (pSrc->ac_vi_traffic_aval << 2); - tmp148__ |= (pSrc->ac_vo_traffic_aval << 3); - tmp148__ |= (pSrc->reserved << 4); - *pBuf = tmp148__; + tmp152__ = 0U; + tmp152__ |= (pSrc->ac_bk_traffic_aval << 0); + tmp152__ |= (pSrc->ac_be_traffic_aval << 1); + tmp152__ |= (pSrc->ac_vi_traffic_aval << 2); + tmp152__ |= (pSrc->ac_vo_traffic_aval << 3); + tmp152__ |= (pSrc->reserved << 4); + *pBuf = tmp152__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -20455,7 +21103,7 @@ uint32_t dot11f_pack_ie_qos_caps_ap(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp149__; + uint8_t tmp153__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -20464,13 +21112,13 @@ uint32_t dot11f_pack_ie_qos_caps_ap(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp149__ = 0U; - tmp149__ |= (pSrc->count << 0); - tmp149__ |= (pSrc->qack << 4); - tmp149__ |= (pSrc->qreq << 5); - tmp149__ |= (pSrc->txopreq << 6); - tmp149__ |= (pSrc->reserved << 7); - *pBuf = tmp149__; + tmp153__ = 0U; + tmp153__ |= (pSrc->count << 0); + tmp153__ |= (pSrc->qack << 4); + tmp153__ |= (pSrc->qreq << 5); + tmp153__ |= (pSrc->txopreq << 6); + tmp153__ |= (pSrc->reserved << 7); + *pBuf = tmp153__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -20492,7 +21140,7 @@ uint32_t dot11f_pack_ie_qos_caps_station(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp150__; + uint8_t tmp154__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -20501,15 +21149,15 @@ uint32_t dot11f_pack_ie_qos_caps_station(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp150__ = 0U; - tmp150__ |= (pSrc->acvo_uapsd << 0); - tmp150__ |= (pSrc->acvi_uapsd << 1); - tmp150__ |= (pSrc->acbk_uapsd << 2); - tmp150__ |= (pSrc->acbe_uapsd << 3); - tmp150__ |= (pSrc->qack << 4); - tmp150__ |= (pSrc->max_sp_length << 5); - tmp150__ |= (pSrc->more_data_ack << 7); - *pBuf = tmp150__; + tmp154__ = 0U; + tmp154__ |= (pSrc->acvo_uapsd << 0); + tmp154__ |= (pSrc->acvi_uapsd << 1); + tmp154__ |= (pSrc->acbk_uapsd << 2); + tmp154__ |= (pSrc->acbe_uapsd << 3); + tmp154__ |= (pSrc->qack << 4); + tmp154__ |= (pSrc->max_sp_length << 5); + tmp154__ |= (pSrc->more_data_ack << 7); + *pBuf = tmp154__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -21146,7 +21794,7 @@ uint32_t dot11f_pack_ie_wapi(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp151__; + uint16_t tmp155__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_iewapi(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -21176,10 +21824,10 @@ uint32_t dot11f_pack_ie_wapi(tpAniSirGlobal pCtx, DOT11F_MEMCPY(pCtx, pBuf, pSrc->multicast_cipher_suite, 4); *pnConsumed += 4; pBuf += 4; - tmp151__ = 0U; - tmp151__ |= (pSrc->preauth << 0); - tmp151__ |= (pSrc->reserved << 1); - frameshtons(pCtx, pBuf, tmp151__, 0); + tmp155__ = 0U; + tmp155__ |= (pSrc->preauth << 0); + tmp155__ |= (pSrc->reserved << 1); + frameshtons(pCtx, pBuf, tmp155__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -21319,7 +21967,7 @@ uint32_t dot11f_pack_ie_wmm_caps(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp152__; + uint8_t tmp156__; nNeeded += 2; while (pSrc->present) { if (nNeeded > nBuf) @@ -21341,13 +21989,13 @@ uint32_t dot11f_pack_ie_wmm_caps(tpAniSirGlobal pCtx, *pBuf = pSrc->version; *pnConsumed += 1; pBuf += 1; - tmp152__ = 0U; - tmp152__ |= (pSrc->reserved << 0); - tmp152__ |= (pSrc->qack << 4); - tmp152__ |= (pSrc->queue_request << 5); - tmp152__ |= (pSrc->txop_request << 6); - tmp152__ |= (pSrc->more_ack << 7); - *pBuf = tmp152__; + tmp156__ = 0U; + tmp156__ |= (pSrc->reserved << 0); + tmp156__ |= (pSrc->qack << 4); + tmp156__ |= (pSrc->queue_request << 5); + tmp156__ |= (pSrc->txop_request << 6); + tmp156__ |= (pSrc->more_ack << 7); + *pBuf = tmp156__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -21369,7 +22017,7 @@ uint32_t dot11f_pack_ie_wmm_info_ap(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp153__; + uint8_t tmp157__; nNeeded += 2; while (pSrc->present) { if (nNeeded > nBuf) @@ -21391,11 +22039,11 @@ uint32_t dot11f_pack_ie_wmm_info_ap(tpAniSirGlobal pCtx, *pBuf = pSrc->version; *pnConsumed += 1; pBuf += 1; - tmp153__ = 0U; - tmp153__ |= (pSrc->param_set_count << 0); - tmp153__ |= (pSrc->reserved << 4); - tmp153__ |= (pSrc->uapsd << 7); - *pBuf = tmp153__; + tmp157__ = 0U; + tmp157__ |= (pSrc->param_set_count << 0); + tmp157__ |= (pSrc->reserved << 4); + tmp157__ |= (pSrc->uapsd << 7); + *pBuf = tmp157__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -21417,7 +22065,7 @@ uint32_t dot11f_pack_ie_wmm_info_station(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp154__; + uint8_t tmp158__; nNeeded += 2; while (pSrc->present) { if (nNeeded > nBuf) @@ -21439,15 +22087,15 @@ uint32_t dot11f_pack_ie_wmm_info_station(tpAniSirGlobal pCtx, *pBuf = pSrc->version; *pnConsumed += 1; pBuf += 1; - tmp154__ = 0U; - tmp154__ |= (pSrc->acvo_uapsd << 0); - tmp154__ |= (pSrc->acvi_uapsd << 1); - tmp154__ |= (pSrc->acbk_uapsd << 2); - tmp154__ |= (pSrc->acbe_uapsd << 3); - tmp154__ |= (pSrc->reserved1 << 4); - tmp154__ |= (pSrc->max_sp_length << 5); - tmp154__ |= (pSrc->reserved2 << 7); - *pBuf = tmp154__; + tmp158__ = 0U; + tmp158__ |= (pSrc->acvo_uapsd << 0); + tmp158__ |= (pSrc->acvi_uapsd << 1); + tmp158__ |= (pSrc->acbk_uapsd << 2); + tmp158__ |= (pSrc->acbe_uapsd << 3); + tmp158__ |= (pSrc->reserved1 << 4); + tmp158__ |= (pSrc->max_sp_length << 5); + tmp158__ |= (pSrc->reserved2 << 7); + *pBuf = tmp158__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -21469,14 +22117,14 @@ uint32_t dot11f_pack_ie_wmm_params(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp155__; - uint8_t tmp156__; - uint8_t tmp157__; - uint8_t tmp158__; uint8_t tmp159__; uint8_t tmp160__; uint8_t tmp161__; uint8_t tmp162__; + uint8_t tmp163__; + uint8_t tmp164__; + uint8_t tmp165__; + uint8_t tmp166__; nNeeded += 19; while (pSrc->present) { if (nNeeded > nBuf) @@ -21504,76 +22152,76 @@ uint32_t dot11f_pack_ie_wmm_params(tpAniSirGlobal pCtx, *pBuf = pSrc->reserved2; *pnConsumed += 1; pBuf += 1; - tmp155__ = 0U; - tmp155__ |= (pSrc->acbe_aifsn << 0); - tmp155__ |= (pSrc->acbe_acm << 4); - tmp155__ |= (pSrc->acbe_aci << 5); - tmp155__ |= (pSrc->unused1 << 7); - *pBuf = tmp155__; + tmp159__ = 0U; + tmp159__ |= (pSrc->acbe_aifsn << 0); + tmp159__ |= (pSrc->acbe_acm << 4); + tmp159__ |= (pSrc->acbe_aci << 5); + tmp159__ |= (pSrc->unused1 << 7); + *pBuf = tmp159__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp156__ = 0U; - tmp156__ |= (pSrc->acbe_acwmin << 0); - tmp156__ |= (pSrc->acbe_acwmax << 4); - *pBuf = tmp156__; + tmp160__ = 0U; + tmp160__ |= (pSrc->acbe_acwmin << 0); + tmp160__ |= (pSrc->acbe_acwmax << 4); + *pBuf = tmp160__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acbe_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp157__ = 0U; - tmp157__ |= (pSrc->acbk_aifsn << 0); - tmp157__ |= (pSrc->acbk_acm << 4); - tmp157__ |= (pSrc->acbk_aci << 5); - tmp157__ |= (pSrc->unused2 << 7); - *pBuf = tmp157__; + tmp161__ = 0U; + tmp161__ |= (pSrc->acbk_aifsn << 0); + tmp161__ |= (pSrc->acbk_acm << 4); + tmp161__ |= (pSrc->acbk_aci << 5); + tmp161__ |= (pSrc->unused2 << 7); + *pBuf = tmp161__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp158__ = 0U; - tmp158__ |= (pSrc->acbk_acwmin << 0); - tmp158__ |= (pSrc->acbk_acwmax << 4); - *pBuf = tmp158__; + tmp162__ = 0U; + tmp162__ |= (pSrc->acbk_acwmin << 0); + tmp162__ |= (pSrc->acbk_acwmax << 4); + *pBuf = tmp162__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acbk_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp159__ = 0U; - tmp159__ |= (pSrc->acvi_aifsn << 0); - tmp159__ |= (pSrc->acvi_acm << 4); - tmp159__ |= (pSrc->acvi_aci << 5); - tmp159__ |= (pSrc->unused3 << 7); - *pBuf = tmp159__; + tmp163__ = 0U; + tmp163__ |= (pSrc->acvi_aifsn << 0); + tmp163__ |= (pSrc->acvi_acm << 4); + tmp163__ |= (pSrc->acvi_aci << 5); + tmp163__ |= (pSrc->unused3 << 7); + *pBuf = tmp163__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp160__ = 0U; - tmp160__ |= (pSrc->acvi_acwmin << 0); - tmp160__ |= (pSrc->acvi_acwmax << 4); - *pBuf = tmp160__; + tmp164__ = 0U; + tmp164__ |= (pSrc->acvi_acwmin << 0); + tmp164__ |= (pSrc->acvi_acwmax << 4); + *pBuf = tmp164__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; frameshtons(pCtx, pBuf, pSrc->acvi_txoplimit, 0); *pnConsumed += 2; pBuf += 2; - tmp161__ = 0U; - tmp161__ |= (pSrc->acvo_aifsn << 0); - tmp161__ |= (pSrc->acvo_acm << 4); - tmp161__ |= (pSrc->acvo_aci << 5); - tmp161__ |= (pSrc->unused4 << 7); - *pBuf = tmp161__; + tmp165__ = 0U; + tmp165__ |= (pSrc->acvo_aifsn << 0); + tmp165__ |= (pSrc->acvo_acm << 4); + tmp165__ |= (pSrc->acvo_aci << 5); + tmp165__ |= (pSrc->unused4 << 7); + *pBuf = tmp165__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp162__ = 0U; - tmp162__ |= (pSrc->acvo_acwmin << 0); - tmp162__ |= (pSrc->acvo_acwmax << 4); - *pBuf = tmp162__; + tmp166__ = 0U; + tmp166__ |= (pSrc->acvo_acwmin << 0); + tmp166__ |= (pSrc->acvo_acwmax << 4); + *pBuf = tmp166__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -22130,7 +22778,7 @@ uint32_t dot11f_pack_ie_bss_color_change(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp163__; + uint8_t tmp167__; nNeeded += 2; while (pSrc->present) { if (nNeeded > nBuf) @@ -22150,10 +22798,10 @@ uint32_t dot11f_pack_ie_bss_color_change(tpAniSirGlobal pCtx, *pBuf = pSrc->countdown; *pnConsumed += 1; pBuf += 1; - tmp163__ = 0U; - tmp163__ |= (pSrc->new_color << 0); - tmp163__ |= (pSrc->reserved << 6); - *pBuf = tmp163__; + tmp167__ = 0U; + tmp167__ |= (pSrc->new_color << 0); + tmp167__ |= (pSrc->reserved << 6); + *pBuf = tmp167__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -22281,7 +22929,7 @@ uint32_t dot11f_pack_ie_fils_indication(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint16_t tmp164__; + uint16_t tmp168__; nNeeded += (pSrc->num_variable_data + 2); while (pSrc->present) { if (nNeeded > nBuf) @@ -22290,17 +22938,17 @@ uint32_t dot11f_pack_ie_fils_indication(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp164__ = 0U; - tmp164__ |= (pSrc->public_key_identifiers_cnt << 0); - tmp164__ |= (pSrc->realm_identifiers_cnt << 3); - tmp164__ |= (pSrc->is_ip_config_supported << 6); - tmp164__ |= (pSrc->is_cache_id_present << 7); - tmp164__ |= (pSrc->is_hessid_present << 8); - tmp164__ |= (pSrc->is_fils_sk_auth_supported << 9); - tmp164__ |= (pSrc->is_fils_sk_auth_pfs_supported << 10); - tmp164__ |= (pSrc->is_pk_auth_supported << 11); - tmp164__ |= (pSrc->reserved << 12); - frameshtons(pCtx, pBuf, tmp164__, 0); + tmp168__ = 0U; + tmp168__ |= (pSrc->public_key_identifiers_cnt << 0); + tmp168__ |= (pSrc->realm_identifiers_cnt << 3); + tmp168__ |= (pSrc->is_ip_config_supported << 6); + tmp168__ |= (pSrc->is_cache_id_present << 7); + tmp168__ |= (pSrc->is_hessid_present << 8); + tmp168__ |= (pSrc->is_fils_sk_auth_supported << 9); + tmp168__ |= (pSrc->is_fils_sk_auth_pfs_supported << 10); + tmp168__ |= (pSrc->is_pk_auth_supported << 11); + tmp168__ |= (pSrc->reserved << 12); + frameshtons(pCtx, pBuf, tmp168__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -22517,7 +23165,7 @@ uint32_t dot11f_pack_ie_hs20vendor_ie(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp165__; + uint8_t tmp169__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_hs20vendor_ie(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -22537,12 +23185,12 @@ uint32_t dot11f_pack_ie_hs20vendor_ie(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); *pBuf = 0x10; ++pBuf; ++(*pnConsumed); - tmp165__ = 0U; - tmp165__ |= (pSrc->dgaf_dis << 0); - tmp165__ |= (pSrc->hs_id_present << 1); - tmp165__ |= (pSrc->reserved << 3); - tmp165__ |= (pSrc->release_num << 4); - *pBuf = tmp165__; + tmp169__ = 0U; + tmp169__ |= (pSrc->dgaf_dis << 0); + tmp169__ |= (pSrc->hs_id_present << 1); + tmp169__ |= (pSrc->reserved << 3); + tmp169__ |= (pSrc->release_num << 4); + *pBuf = tmp169__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -22580,7 +23228,7 @@ uint32_t dot11f_pack_ie_ht2040_bss_coexistence(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp166__; + uint8_t tmp170__; nNeeded += 1; while (pSrc->present) { if (nNeeded > nBuf) @@ -22589,14 +23237,14 @@ uint32_t dot11f_pack_ie_ht2040_bss_coexistence(tpAniSirGlobal pCtx, ++pBuf; ++(*pnConsumed); pIeLen = pBuf; ++pBuf; ++(*pnConsumed); - tmp166__ = 0U; - tmp166__ |= (pSrc->info_request << 0); - tmp166__ |= (pSrc->forty_mhz_intolerant << 1); - tmp166__ |= (pSrc->twenty_mhz_bsswidth_req << 2); - tmp166__ |= (pSrc->obss_scan_exemption_req << 3); - tmp166__ |= (pSrc->obss_scan_exemption_grant << 4); - tmp166__ |= (pSrc->unused << 5); - *pBuf = tmp166__; + tmp170__ = 0U; + tmp170__ |= (pSrc->info_request << 0); + tmp170__ |= (pSrc->forty_mhz_intolerant << 1); + tmp170__ |= (pSrc->twenty_mhz_bsswidth_req << 2); + tmp170__ |= (pSrc->obss_scan_exemption_req << 3); + tmp170__ |= (pSrc->obss_scan_exemption_grant << 4); + tmp170__ |= (pSrc->unused << 5); + *pBuf = tmp170__; *pnConsumed += 1; /* fieldsEndFlag = 1 */ nBuf -= 1 ; @@ -22650,14 +23298,14 @@ uint32_t dot11f_pack_ie_mu_edca_param_set(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint8_t tmp167__; - uint8_t tmp168__; - uint8_t tmp169__; - uint8_t tmp170__; uint8_t tmp171__; uint8_t tmp172__; uint8_t tmp173__; uint8_t tmp174__; + uint8_t tmp175__; + uint8_t tmp176__; + uint8_t tmp177__; + uint8_t tmp178__; nNeeded += 13; while (pSrc->present) { if (nNeeded > nBuf) @@ -22677,76 +23325,76 @@ uint32_t dot11f_pack_ie_mu_edca_param_set(tpAniSirGlobal pCtx, *pBuf = pSrc->qos; *pnConsumed += 1; pBuf += 1; - tmp167__ = 0U; - tmp167__ |= (pSrc->acbe_aifsn << 0); - tmp167__ |= (pSrc->acbe_acm << 4); - tmp167__ |= (pSrc->acbe_aci << 5); - tmp167__ |= (pSrc->unused1 << 7); - *pBuf = tmp167__; + tmp171__ = 0U; + tmp171__ |= (pSrc->acbe_aifsn << 0); + tmp171__ |= (pSrc->acbe_acm << 4); + tmp171__ |= (pSrc->acbe_aci << 5); + tmp171__ |= (pSrc->unused1 << 7); + *pBuf = tmp171__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp168__ = 0U; - tmp168__ |= (pSrc->acbe_acwmin << 0); - tmp168__ |= (pSrc->acbe_acwmax << 4); - *pBuf = tmp168__; + tmp172__ = 0U; + tmp172__ |= (pSrc->acbe_acwmin << 0); + tmp172__ |= (pSrc->acbe_acwmax << 4); + *pBuf = tmp172__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; *pBuf = pSrc->acbe_muedca_timer; *pnConsumed += 1; pBuf += 1; - tmp169__ = 0U; - tmp169__ |= (pSrc->acbk_aifsn << 0); - tmp169__ |= (pSrc->acbk_acm << 4); - tmp169__ |= (pSrc->acbk_aci << 5); - tmp169__ |= (pSrc->unused2 << 7); - *pBuf = tmp169__; + tmp173__ = 0U; + tmp173__ |= (pSrc->acbk_aifsn << 0); + tmp173__ |= (pSrc->acbk_acm << 4); + tmp173__ |= (pSrc->acbk_aci << 5); + tmp173__ |= (pSrc->unused2 << 7); + *pBuf = tmp173__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp170__ = 0U; - tmp170__ |= (pSrc->acbk_acwmin << 0); - tmp170__ |= (pSrc->acbk_acwmax << 4); - *pBuf = tmp170__; + tmp174__ = 0U; + tmp174__ |= (pSrc->acbk_acwmin << 0); + tmp174__ |= (pSrc->acbk_acwmax << 4); + *pBuf = tmp174__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; *pBuf = pSrc->acbk_muedca_timer; *pnConsumed += 1; pBuf += 1; - tmp171__ = 0U; - tmp171__ |= (pSrc->acvi_aifsn << 0); - tmp171__ |= (pSrc->acvi_acm << 4); - tmp171__ |= (pSrc->acvi_aci << 5); - tmp171__ |= (pSrc->unused3 << 7); - *pBuf = tmp171__; + tmp175__ = 0U; + tmp175__ |= (pSrc->acvi_aifsn << 0); + tmp175__ |= (pSrc->acvi_acm << 4); + tmp175__ |= (pSrc->acvi_aci << 5); + tmp175__ |= (pSrc->unused3 << 7); + *pBuf = tmp175__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp172__ = 0U; - tmp172__ |= (pSrc->acvi_acwmin << 0); - tmp172__ |= (pSrc->acvi_acwmax << 4); - *pBuf = tmp172__; + tmp176__ = 0U; + tmp176__ |= (pSrc->acvi_acwmin << 0); + tmp176__ |= (pSrc->acvi_acwmax << 4); + *pBuf = tmp176__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; *pBuf = pSrc->acvi_muedca_timer; *pnConsumed += 1; pBuf += 1; - tmp173__ = 0U; - tmp173__ |= (pSrc->acvo_aifsn << 0); - tmp173__ |= (pSrc->acvo_acm << 4); - tmp173__ |= (pSrc->acvo_aci << 5); - tmp173__ |= (pSrc->unused4 << 7); - *pBuf = tmp173__; + tmp177__ = 0U; + tmp177__ |= (pSrc->acvo_aifsn << 0); + tmp177__ |= (pSrc->acvo_acm << 4); + tmp177__ |= (pSrc->acvo_aci << 5); + tmp177__ |= (pSrc->unused4 << 7); + *pBuf = tmp177__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp174__ = 0U; - tmp174__ |= (pSrc->acvo_acwmin << 0); - tmp174__ |= (pSrc->acvo_acwmax << 4); - *pBuf = tmp174__; + tmp178__ = 0U; + tmp178__ |= (pSrc->acvo_acwmin << 0); + tmp178__ |= (pSrc->acvo_acwmax << 4); + *pBuf = tmp178__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; @@ -22837,12 +23485,12 @@ uint32_t dot11f_pack_ie_vendor_he_cap(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint32_t tmp175__; - uint8_t tmp176__; - uint32_t tmp177__; - uint32_t tmp178__; - uint8_t tmp179__; - uint16_t tmp180__; + uint32_t tmp179__; + uint8_t tmp180__; + uint32_t tmp181__; + uint32_t tmp182__; + uint8_t tmp183__; + uint16_t tmp184__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_vendor_he_cap(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -22862,98 +23510,98 @@ uint32_t dot11f_pack_ie_vendor_he_cap(tpAniSirGlobal pCtx, ++pBuf; --nBuf; ++(*pnConsumed); *pBuf = 0x1; ++pBuf; --nBuf; ++(*pnConsumed); - tmp175__ = 0U; - tmp175__ |= (pSrc->htc_he << 0); - tmp175__ |= (pSrc->twt_request << 1); - tmp175__ |= (pSrc->twt_responder << 2); - tmp175__ |= (pSrc->fragmentation << 3); - tmp175__ |= (pSrc->max_num_frag_msdu << 5); - tmp175__ |= (pSrc->min_frag_size << 8); - tmp175__ |= (pSrc->trigger_frm_mac_pad << 10); - tmp175__ |= (pSrc->multi_tid_aggr << 12); - tmp175__ |= (pSrc->he_link_adaptation << 15); - tmp175__ |= (pSrc->all_ack << 17); - tmp175__ |= (pSrc->ul_mu_rsp_sched << 18); - tmp175__ |= (pSrc->a_bsr << 19); - tmp175__ |= (pSrc->broadcast_twt << 20); - tmp175__ |= (pSrc->ba_32bit_bitmap << 21); - tmp175__ |= (pSrc->mu_cascade << 22); - tmp175__ |= (pSrc->ack_enabled_multitid << 23); - tmp175__ |= (pSrc->dl_mu_ba << 24); - tmp175__ |= (pSrc->omi_a_ctrl << 25); - tmp175__ |= (pSrc->ofdma_ra << 26); - tmp175__ |= (pSrc->max_ampdu_len << 27); - tmp175__ |= (pSrc->amsdu_frag << 29); - tmp175__ |= (pSrc->flex_twt_sched << 30); - tmp175__ |= (pSrc->rx_ctrl_frame << 31); - frameshtonl(pCtx, pBuf, tmp175__, 0); - *pnConsumed += 4; - pBuf += 4; - nBuf -= 4 ; - tmp176__ = 0U; - tmp176__ |= (pSrc->bsrp_ampdu_aggr << 0); - tmp176__ |= (pSrc->qtp << 1); - tmp176__ |= (pSrc->a_bqr << 2); - tmp176__ |= (pSrc->reserved1 << 3); - *pBuf = tmp176__; - *pnConsumed += 1; - pBuf += 1; - nBuf -= 1 ; - tmp177__ = 0U; - tmp177__ |= (pSrc->dual_band << 0); - tmp177__ |= (pSrc->chan_width << 1); - tmp177__ |= (pSrc->rx_pream_puncturing << 8); - tmp177__ |= (pSrc->device_class << 12); - tmp177__ |= (pSrc->ldpc_coding << 13); - tmp177__ |= (pSrc->he_ltf_gi_ppdu << 14); - tmp177__ |= (pSrc->he_ltf_gi_ndp << 16); - tmp177__ |= (pSrc->stbc << 18); - tmp177__ |= (pSrc->doppler << 20); - tmp177__ |= (pSrc->ul_mu << 22); - tmp177__ |= (pSrc->dcm_enc_tx << 24); - tmp177__ |= (pSrc->dcm_enc_rx << 27); - tmp177__ |= (pSrc->ul_he_mu << 30); - tmp177__ |= (pSrc->su_beamformer << 31); - frameshtonl(pCtx, pBuf, tmp177__, 0); - *pnConsumed += 4; - pBuf += 4; - nBuf -= 4 ; - tmp178__ = 0U; - tmp178__ |= (pSrc->su_beamformee << 0); - tmp178__ |= (pSrc->mu_beamformer << 1); - tmp178__ |= (pSrc->bfee_sts_lt_80 << 2); - tmp178__ |= (pSrc->nsts_tol_lt_80 << 5); - tmp178__ |= (pSrc->bfee_sta_gt_80 << 8); - tmp178__ |= (pSrc->nsts_tot_gt_80 << 11); - tmp178__ |= (pSrc->num_sounding_lt_80 << 14); - tmp178__ |= (pSrc->num_sounding_gt_80 << 17); - tmp178__ |= (pSrc->su_feedback_tone16 << 20); - tmp178__ |= (pSrc->mu_feedback_tone16 << 21); - tmp178__ |= (pSrc->codebook_su << 22); - tmp178__ |= (pSrc->codebook_mu << 23); - tmp178__ |= (pSrc->beamforming_feedback << 24); - tmp178__ |= (pSrc->he_er_su_ppdu << 27); - tmp178__ |= (pSrc->dl_mu_mimo_part_bw << 28); - tmp178__ |= (pSrc->ppet_present << 29); - tmp178__ |= (pSrc->srp << 30); - tmp178__ |= (pSrc->power_boost << 31); - frameshtonl(pCtx, pBuf, tmp178__, 0); - *pnConsumed += 4; - pBuf += 4; - nBuf -= 4 ; tmp179__ = 0U; - tmp179__ |= (pSrc->he_ltf_gi_4x << 0); - tmp179__ |= (pSrc->reserved2 << 1); - *pBuf = tmp179__; + tmp179__ |= (pSrc->htc_he << 0); + tmp179__ |= (pSrc->twt_request << 1); + tmp179__ |= (pSrc->twt_responder << 2); + tmp179__ |= (pSrc->fragmentation << 3); + tmp179__ |= (pSrc->max_num_frag_msdu << 5); + tmp179__ |= (pSrc->min_frag_size << 8); + tmp179__ |= (pSrc->trigger_frm_mac_pad << 10); + tmp179__ |= (pSrc->multi_tid_aggr << 12); + tmp179__ |= (pSrc->he_link_adaptation << 15); + tmp179__ |= (pSrc->all_ack << 17); + tmp179__ |= (pSrc->ul_mu_rsp_sched << 18); + tmp179__ |= (pSrc->a_bsr << 19); + tmp179__ |= (pSrc->broadcast_twt << 20); + tmp179__ |= (pSrc->ba_32bit_bitmap << 21); + tmp179__ |= (pSrc->mu_cascade << 22); + tmp179__ |= (pSrc->ack_enabled_multitid << 23); + tmp179__ |= (pSrc->dl_mu_ba << 24); + tmp179__ |= (pSrc->omi_a_ctrl << 25); + tmp179__ |= (pSrc->ofdma_ra << 26); + tmp179__ |= (pSrc->max_ampdu_len << 27); + tmp179__ |= (pSrc->amsdu_frag << 29); + tmp179__ |= (pSrc->flex_twt_sched << 30); + tmp179__ |= (pSrc->rx_ctrl_frame << 31); + frameshtonl(pCtx, pBuf, tmp179__, 0); + *pnConsumed += 4; + pBuf += 4; + nBuf -= 4 ; + tmp180__ = 0U; + tmp180__ |= (pSrc->bsrp_ampdu_aggr << 0); + tmp180__ |= (pSrc->qtp << 1); + tmp180__ |= (pSrc->a_bqr << 2); + tmp180__ |= (pSrc->reserved1 << 3); + *pBuf = tmp180__; *pnConsumed += 1; pBuf += 1; nBuf -= 1 ; - tmp180__ = 0U; - tmp180__ |= (pSrc->nss_supported << 0); - tmp180__ |= (pSrc->mcs_supported << 3); - tmp180__ |= (pSrc->tx_bw_bitmap << 6); - tmp180__ |= (pSrc->rx_bw_bitmap << 11); - frameshtons(pCtx, pBuf, tmp180__, 0); + tmp181__ = 0U; + tmp181__ |= (pSrc->dual_band << 0); + tmp181__ |= (pSrc->chan_width << 1); + tmp181__ |= (pSrc->rx_pream_puncturing << 8); + tmp181__ |= (pSrc->device_class << 12); + tmp181__ |= (pSrc->ldpc_coding << 13); + tmp181__ |= (pSrc->he_ltf_gi_ppdu << 14); + tmp181__ |= (pSrc->he_ltf_gi_ndp << 16); + tmp181__ |= (pSrc->stbc << 18); + tmp181__ |= (pSrc->doppler << 20); + tmp181__ |= (pSrc->ul_mu << 22); + tmp181__ |= (pSrc->dcm_enc_tx << 24); + tmp181__ |= (pSrc->dcm_enc_rx << 27); + tmp181__ |= (pSrc->ul_he_mu << 30); + tmp181__ |= (pSrc->su_beamformer << 31); + frameshtonl(pCtx, pBuf, tmp181__, 0); + *pnConsumed += 4; + pBuf += 4; + nBuf -= 4 ; + tmp182__ = 0U; + tmp182__ |= (pSrc->su_beamformee << 0); + tmp182__ |= (pSrc->mu_beamformer << 1); + tmp182__ |= (pSrc->bfee_sts_lt_80 << 2); + tmp182__ |= (pSrc->nsts_tol_lt_80 << 5); + tmp182__ |= (pSrc->bfee_sta_gt_80 << 8); + tmp182__ |= (pSrc->nsts_tot_gt_80 << 11); + tmp182__ |= (pSrc->num_sounding_lt_80 << 14); + tmp182__ |= (pSrc->num_sounding_gt_80 << 17); + tmp182__ |= (pSrc->su_feedback_tone16 << 20); + tmp182__ |= (pSrc->mu_feedback_tone16 << 21); + tmp182__ |= (pSrc->codebook_su << 22); + tmp182__ |= (pSrc->codebook_mu << 23); + tmp182__ |= (pSrc->beamforming_feedback << 24); + tmp182__ |= (pSrc->he_er_su_ppdu << 27); + tmp182__ |= (pSrc->dl_mu_mimo_part_bw << 28); + tmp182__ |= (pSrc->ppet_present << 29); + tmp182__ |= (pSrc->srp << 30); + tmp182__ |= (pSrc->power_boost << 31); + frameshtonl(pCtx, pBuf, tmp182__, 0); + *pnConsumed += 4; + pBuf += 4; + nBuf -= 4 ; + tmp183__ = 0U; + tmp183__ |= (pSrc->he_ltf_gi_4x << 0); + tmp183__ |= (pSrc->reserved2 << 1); + *pBuf = tmp183__; + *pnConsumed += 1; + pBuf += 1; + nBuf -= 1 ; + tmp184__ = 0U; + tmp184__ |= (pSrc->nss_supported << 0); + tmp184__ |= (pSrc->mcs_supported << 3); + tmp184__ |= (pSrc->tx_bw_bitmap << 6); + tmp184__ |= (pSrc->rx_bw_bitmap << 11); + frameshtons(pCtx, pBuf, tmp184__, 0); *pnConsumed += 2; pBuf += 2; nBuf -= 2 ; @@ -22986,7 +23634,7 @@ uint32_t dot11f_pack_ie_vendor_he_op(tpAniSirGlobal pCtx, uint8_t *pIeLen = 0; uint32_t nConsumedOnEntry = *pnConsumed; uint32_t nNeeded = 0U; - uint32_t tmp181__; + uint32_t tmp185__; uint32_t status = DOT11F_PARSE_SUCCESS; status = dot11f_get_packed_ie_vendor_he_op(pCtx, pSrc, &nNeeded); if (!DOT11F_SUCCEEDED(status)) @@ -23006,17 +23654,17 @@ uint32_t dot11f_pack_ie_vendor_he_op(tpAniSirGlobal pCtx, ++pBuf; --nBuf; ++(*pnConsumed); *pBuf = 0x2; ++pBuf; --nBuf; ++(*pnConsumed); - tmp181__ = 0U; - tmp181__ |= (pSrc->bss_color << 0); - tmp181__ |= (pSrc->default_pe << 6); - tmp181__ |= (pSrc->twt_required << 9); - tmp181__ |= (pSrc->rts_threshold << 10); - tmp181__ |= (pSrc->partial_bss_col << 20); - tmp181__ |= (pSrc->maxbssid_ind << 21); - tmp181__ |= (pSrc->tx_bssid_ind << 29); - tmp181__ |= (pSrc->bss_col_disabled << 30); - tmp181__ |= (pSrc->dual_beacon << 31); - frameshtonl(pCtx, pBuf, tmp181__, 0); + tmp185__ = 0U; + tmp185__ |= (pSrc->bss_color << 0); + tmp185__ |= (pSrc->default_pe << 6); + tmp185__ |= (pSrc->twt_required << 9); + tmp185__ |= (pSrc->rts_threshold << 10); + tmp185__ |= (pSrc->partial_bss_col << 20); + tmp185__ |= (pSrc->maxbssid_ind << 21); + tmp185__ |= (pSrc->tx_bssid_ind << 29); + tmp185__ |= (pSrc->bss_col_disabled << 30); + tmp185__ |= (pSrc->dual_beacon << 31); + frameshtonl(pCtx, pBuf, tmp185__, 0); *pnConsumed += 4; pBuf += 4; nBuf -= 4 ; @@ -25562,6 +26210,83 @@ static uint32_t pack_tlv_core(tpAniSirGlobal pCtx, (pSrc + pTlv->offset), pBufRemaining, nBufRemaining, &len); break; + case SigTlvassoc_disallowed: + status |= + dot11f_pack_tlv_assoc_disallowed( + pCtx, (tDot11fTLVassoc_disallowed *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvassoc_retry_delay: + status |= + dot11f_pack_tlv_assoc_retry_delay( + pCtx, (tDot11fTLVassoc_retry_delay *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvcellular_data_cap: + status |= + dot11f_pack_tlv_cellular_data_cap( + pCtx, (tDot11fTLVcellular_data_cap *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvcellular_data_con_pref: + status |= + dot11f_pack_tlv_cellular_data_con_pref( + pCtx, (tDot11fTLVcellular_data_con_pref *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvmbo_ap_cap: + status |= + dot11f_pack_tlv_mbo_ap_cap( + pCtx, (tDot11fTLVmbo_ap_cap *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvnon_prefferd_chan_rep: + status |= + dot11f_pack_tlv_non_prefferd_chan_rep( + pCtx, (tDot11fTLVnon_prefferd_chan_rep *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvoce_cap: + status |= + dot11f_pack_tlv_oce_cap( + pCtx, (tDot11fTLVoce_cap *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvreduced_wan_metrics: + status |= + dot11f_pack_tlv_reduced_wan_metrics( + pCtx, (tDot11fTLVreduced_wan_metrics *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvrssi_assoc_rej: + status |= + dot11f_pack_tlv_rssi_assoc_rej( + pCtx, (tDot11fTLVrssi_assoc_rej *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvtransition_reason: + status |= + dot11f_pack_tlv_transition_reason( + pCtx, (tDot11fTLVtransition_reason *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; + case SigTlvtransition_reject_reason: + status |= + dot11f_pack_tlv_transition_reject_reason( + pCtx, (tDot11fTLVtransition_reject_reason *) + (pSrc + pTlv->offset), pBufRemaining, + nBufRemaining, &len); + break; case SigTlvP2PInterface: status |= dot11f_pack_tlv_p2_p_interface( diff --git a/core/mac/src/sys/legacy/src/utils/src/parser_api.c b/core/mac/src/sys/legacy/src/utils/src/parser_api.c index edf3c17aab..eeb63a9eac 100644 --- a/core/mac/src/sys/legacy/src/utils/src/parser_api.c +++ b/core/mac/src/sys/legacy/src/utils/src/parser_api.c @@ -2521,14 +2521,14 @@ tSirRetStatus sir_convert_probe_frame2_struct(tpAniSirGlobal pMac, } if (pr->MBO_IE.present) { pProbeResp->MBO_IE_present = true; - pProbeResp->MBO_capability = pr->MBO_IE.mbo_cap[2]; + if (pr->MBO_IE.cellular_data_cap.present) + pProbeResp->MBO_capability = + pr->MBO_IE.cellular_data_cap.cellular_connectivity; - if (pr->MBO_IE.num_assoc_disallowed && - (pr->MBO_IE.assoc_disallowed[0] == - MBO_IE_ASSOC_DISALLOWED_SUBATTR_ID)) { + if (pr->MBO_IE.assoc_disallowed.present) { pProbeResp->assoc_disallowed = true; pProbeResp->assoc_disallowed_reason = - pr->MBO_IE.assoc_disallowed[2]; + pr->MBO_IE.assoc_disallowed.reason_code; } } @@ -3705,14 +3705,14 @@ sir_parse_beacon_ie(tpAniSirGlobal pMac, if (pBies->MBO_IE.present) { pBeaconStruct->MBO_IE_present = true; - pBeaconStruct->MBO_capability = pBies->MBO_IE.mbo_cap[2]; + if (pBies->MBO_IE.cellular_data_cap.present) + pBeaconStruct->MBO_capability = + pBies->MBO_IE.cellular_data_cap.cellular_connectivity; - if (pBies->MBO_IE.num_assoc_disallowed && - (pBies->MBO_IE.assoc_disallowed[0] == - MBO_IE_ASSOC_DISALLOWED_SUBATTR_ID)) { + if (pBies->MBO_IE.assoc_disallowed.present) { pBeaconStruct->assoc_disallowed = true; pBeaconStruct->assoc_disallowed_reason = - pBies->MBO_IE.assoc_disallowed[2]; + pBies->MBO_IE.assoc_disallowed.reason_code; } } @@ -4078,14 +4078,14 @@ sir_convert_beacon_frame2_struct(tpAniSirGlobal pMac, } if (pBeacon->MBO_IE.present) { pBeaconStruct->MBO_IE_present = true; - pBeaconStruct->MBO_capability = pBeacon->MBO_IE.mbo_cap[2]; + if (pBeacon->MBO_IE.cellular_data_cap.present) + pBeaconStruct->MBO_capability = + pBeacon->MBO_IE.cellular_data_cap.cellular_connectivity; - if (pBeacon->MBO_IE.num_assoc_disallowed && - (pBeacon->MBO_IE.assoc_disallowed[0] == - MBO_IE_ASSOC_DISALLOWED_SUBATTR_ID)) { + if (pBeacon->MBO_IE.assoc_disallowed.present) { pBeaconStruct->assoc_disallowed = true; pBeaconStruct->assoc_disallowed_reason = - pBeacon->MBO_IE.assoc_disallowed[2]; + pBeacon->MBO_IE.assoc_disallowed.reason_code; } }