|
@@ -25,7 +25,7 @@
|
|
|
*
|
|
|
*
|
|
|
* This file was automatically generated by 'framesc'
|
|
|
- * Mon Jun 27 14:45:04 2022 from the following file(s):
|
|
|
+ * Thu Jul 28 13:24:31 2022 from the following file(s):
|
|
|
*
|
|
|
* dot11f.frms
|
|
|
*
|
|
@@ -10591,6 +10591,26 @@ uint32_t dot11f_unpack_ie_spatial_reuse(tpAniSirGlobal pCtx,
|
|
|
#define SigIespatial_reuse (0x00a1)
|
|
|
|
|
|
|
|
|
+uint32_t dot11f_unpack_ie_t2lm_ie(tpAniSirGlobal pCtx,
|
|
|
+ uint8_t *pBuf,
|
|
|
+ uint8_t ielen,
|
|
|
+ tDot11fIEt2lm_ie *pDst,
|
|
|
+ bool append_ie)
|
|
|
+{
|
|
|
+ uint32_t status = DOT11F_PARSE_SUCCESS;
|
|
|
+ (void) pBuf; (void)ielen; /* Shutup the compiler */
|
|
|
+ if (pDst->present)
|
|
|
+ return DOT11F_DUPLICATE_IE;
|
|
|
+ pDst->present = 1;
|
|
|
+ pDst->num_data = (uint8_t)(ielen);
|
|
|
+ DOT11F_MEMCPY(pCtx, pDst->data, pBuf, (ielen));
|
|
|
+ (void)pCtx;
|
|
|
+ return status;
|
|
|
+} /* End dot11f_unpack_ie_t2lm_ie. */
|
|
|
+
|
|
|
+#define SigIet2lm_ie (0x00a2)
|
|
|
+
|
|
|
+
|
|
|
static const tFFDefn FFS_vendor_vht_ie[] = {
|
|
|
{ NULL, 0, 0, 0,},
|
|
|
};
|
|
@@ -10637,7 +10657,7 @@ uint32_t dot11f_unpack_ie_vendor_vht_ie(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_unpack_ie_vendor_vht_ie. */
|
|
|
|
|
|
-#define SigIevendor_vht_ie (0x00a2)
|
|
|
+#define SigIevendor_vht_ie (0x00a3)
|
|
|
|
|
|
|
|
|
static const tFFDefn FFS_AddTSRequest[] = {
|
|
@@ -10873,6 +10893,9 @@ static const tIEDefn IES_AssocRequest[] = {
|
|
|
{ offsetof(tDot11fAssocRequest, mlo_ie), offsetof(tDot11fIEmlo_ie,
|
|
|
present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fAssocRequest, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fAssocRequest, WPAOpaque), offsetof(tDot11fIEWPAOpaque,
|
|
|
present), 0, "WPAOpaque", 0, 8, 255, SigIeWPAOpaque, {0, 80, 242, 1, 0},
|
|
|
4, DOT11F_EID_WPAOPAQUE, 0, 0, },
|
|
@@ -11075,6 +11098,9 @@ static const tIEDefn IES_AssocResponse[] = {
|
|
|
{ offsetof(tDot11fAssocResponse, mlo_ie), offsetof(tDot11fIEmlo_ie,
|
|
|
present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fAssocResponse, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fAssocResponse, WPA), offsetof(tDot11fIEWPA, present), 0,
|
|
|
"WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
|
|
|
{ offsetof(tDot11fAssocResponse, WMMParams), offsetof(tDot11fIEWMMParams,
|
|
@@ -11386,6 +11412,9 @@ static const tIEDefn IES_Beacon[] = {
|
|
|
{ offsetof(tDot11fBeacon, mlo_ie), offsetof(tDot11fIEmlo_ie, present), 0,
|
|
|
"mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fBeacon, t2lm_ie), offsetof(tDot11fIEt2lm_ie, present), 0,
|
|
|
+ "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fBeacon, WPA), offsetof(tDot11fIEWPA, present), 0, "WPA",
|
|
|
0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
|
|
|
{ offsetof(tDot11fBeacon, WMMInfoAp), offsetof(tDot11fIEWMMInfoAp,
|
|
@@ -11642,6 +11671,9 @@ static const tIEDefn IES_Beacon2[] = {
|
|
|
{ offsetof(tDot11fBeacon2, mlo_ie), offsetof(tDot11fIEmlo_ie, present), 0,
|
|
|
"mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fBeacon2, t2lm_ie), offsetof(tDot11fIEt2lm_ie, present),
|
|
|
+ 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fBeacon2, WPA), offsetof(tDot11fIEWPA, present), 0, "WPA",
|
|
|
0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
|
|
|
{ offsetof(tDot11fBeacon2, WMMInfoAp), offsetof(tDot11fIEWMMInfoAp,
|
|
@@ -11889,6 +11921,9 @@ static const tIEDefn IES_BeaconIEs[] = {
|
|
|
{ offsetof(tDot11fBeaconIEs, mlo_ie), offsetof(tDot11fIEmlo_ie, present),
|
|
|
0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fBeaconIEs, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fBeaconIEs, WPA), offsetof(tDot11fIEWPA, present), 0,
|
|
|
"WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
|
|
|
{ offsetof(tDot11fBeaconIEs, WMMInfoAp), offsetof(tDot11fIEWMMInfoAp,
|
|
@@ -12569,6 +12604,9 @@ static const tIEDefn IES_ProbeResponse[] = {
|
|
|
{ offsetof(tDot11fProbeResponse, mlo_ie), offsetof(tDot11fIEmlo_ie,
|
|
|
present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fProbeResponse, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fProbeResponse, WPA), offsetof(tDot11fIEWPA, present), 0,
|
|
|
"WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
|
|
|
{ offsetof(tDot11fProbeResponse, WMMInfoAp), offsetof(tDot11fIEWMMInfoAp,
|
|
@@ -12847,6 +12885,9 @@ static const tIEDefn IES_ReAssocRequest[] = {
|
|
|
{ offsetof(tDot11fReAssocRequest, mlo_ie), offsetof(tDot11fIEmlo_ie,
|
|
|
present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fReAssocRequest, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fReAssocRequest, WPAOpaque),
|
|
|
offsetof(tDot11fIEWPAOpaque, present), 0, "WPAOpaque",
|
|
|
0, 8, 255, SigIeWPAOpaque, {0, 80, 242, 1, 0},
|
|
@@ -13031,6 +13072,9 @@ static const tIEDefn IES_ReAssocResponse[] = {
|
|
|
{ offsetof(tDot11fReAssocResponse, mlo_ie), offsetof(tDot11fIEmlo_ie,
|
|
|
present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
|
|
|
0, DOT11F_EID_MLO_IE, 107, 0, },
|
|
|
+ { offsetof(tDot11fReAssocResponse, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
|
|
|
+ present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
|
|
|
+ 0, DOT11F_EID_T2LM_IE, 109, 0, },
|
|
|
{ offsetof(tDot11fReAssocResponse, WPA), offsetof(tDot11fIEWPA, present),
|
|
|
0, "WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0},
|
|
|
4, DOT11F_EID_WPA, 0, 0, },
|
|
@@ -16138,6 +16182,16 @@ static uint32_t unpack_core(tpAniSirGlobal pCtx,
|
|
|
countOffset),
|
|
|
append_ie);
|
|
|
break;
|
|
|
+ case SigIet2lm_ie:
|
|
|
+ status |=
|
|
|
+ dot11f_unpack_ie_t2lm_ie(
|
|
|
+ pCtx, pBufRemaining, len,
|
|
|
+ (tDot11fIEt2lm_ie *)
|
|
|
+ (pFrm + pIe->offset +
|
|
|
+ sizeof(tDot11fIEt2lm_ie) *
|
|
|
+ countOffset),
|
|
|
+ append_ie);
|
|
|
+ break;
|
|
|
case SigIevendor_vht_ie:
|
|
|
status |=
|
|
|
dot11f_unpack_ie_vendor_vht_ie(
|
|
@@ -19600,6 +19654,15 @@ static uint32_t get_packed_size_core(tpAniSirGlobal pCtx,
|
|
|
(pFrm + pIe->offset + offset * i),
|
|
|
pnNeeded);
|
|
|
break;
|
|
|
+ case SigIet2lm_ie:
|
|
|
+ offset = sizeof(tDot11fIEt2lm_ie);
|
|
|
+ byteCount = ((tDot11fIEt2lm_ie *)
|
|
|
+ (pFrm + pIe->offset + offset * i))->
|
|
|
+ num_data;
|
|
|
+ pIePresent = ((tDot11fIEt2lm_ie *)
|
|
|
+ (pFrm + pIe->offset + offset * i))->
|
|
|
+ present;
|
|
|
+ break;
|
|
|
case SigIevendor_vht_ie:
|
|
|
offset = sizeof(tDot11fIEvendor_vht_ie);
|
|
|
status |=
|
|
@@ -30076,6 +30139,37 @@ uint32_t dot11f_pack_ie_spatial_reuse(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_pack_ie_spatial_reuse. */
|
|
|
|
|
|
+uint32_t dot11f_pack_ie_t2lm_ie(tpAniSirGlobal pCtx,
|
|
|
+ tDot11fIEt2lm_ie *pSrc,
|
|
|
+ uint8_t *pBuf,
|
|
|
+ uint32_t nBuf,
|
|
|
+ uint32_t *pnConsumed)
|
|
|
+{
|
|
|
+ uint8_t *pIeLen = 0;
|
|
|
+ uint32_t nConsumedOnEntry = *pnConsumed;
|
|
|
+ uint32_t nNeeded = 0U;
|
|
|
+ nNeeded += pSrc->num_data;
|
|
|
+ while (pSrc->present) {
|
|
|
+ if (nNeeded > nBuf)
|
|
|
+ return DOT11F_BUFFER_OVERFLOW;
|
|
|
+ *pBuf = 255;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ pIeLen = pBuf;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ *pBuf = 109;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ DOT11F_MEMCPY(pCtx, pBuf, &(pSrc->data), pSrc->num_data);
|
|
|
+ *pnConsumed += pSrc->num_data;
|
|
|
+ /* fieldsEndFlag = 1 */
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ (void)pCtx;
|
|
|
+ if (pIeLen) {
|
|
|
+ *pIeLen = *pnConsumed - nConsumedOnEntry - 2;
|
|
|
+ }
|
|
|
+ return DOT11F_PARSE_SUCCESS;
|
|
|
+} /* End dot11f_pack_ie_t2lm_ie. */
|
|
|
+
|
|
|
uint32_t dot11f_pack_ie_vendor_vht_ie(tpAniSirGlobal pCtx,
|
|
|
tDot11fIEvendor_vht_ie *pSrc,
|
|
|
uint8_t *pBuf,
|
|
@@ -32466,6 +32560,14 @@ static uint32_t pack_core(tpAniSirGlobal pCtx,
|
|
|
sizeof(tDot11fIEspatial_reuse) * i),
|
|
|
pBufRemaining, nBufRemaining, &len);
|
|
|
break;
|
|
|
+ case SigIet2lm_ie:
|
|
|
+ status |=
|
|
|
+ dot11f_pack_ie_t2lm_ie(
|
|
|
+ pCtx, (tDot11fIEt2lm_ie *)
|
|
|
+ (pSrc + pIe->offset +
|
|
|
+ sizeof(tDot11fIEt2lm_ie) * i),
|
|
|
+ pBufRemaining, nBufRemaining, &len);
|
|
|
+ break;
|
|
|
case SigIevendor_vht_ie:
|
|
|
status |=
|
|
|
dot11f_pack_ie_vendor_vht_ie(
|