|
@@ -33,7 +33,7 @@
|
|
|
*
|
|
|
*
|
|
|
* This file was automatically generated by 'framesc'
|
|
|
- * Fri Jun 9 14:23:47 2017 from the following file(s):
|
|
|
+ * Thu Jun 22 10:47:16 2017 from the following file(s):
|
|
|
*
|
|
|
* dot11f.frms
|
|
|
*
|
|
@@ -6538,6 +6538,26 @@ uint32_t dot11f_unpack_ie_mu_edca_param_set(tpAniSirGlobal pCtx,
|
|
|
#define SigIemu_edca_param_set (0x008c)
|
|
|
|
|
|
|
|
|
+uint32_t dot11f_unpack_ie_osen_ie(tpAniSirGlobal pCtx,
|
|
|
+ uint8_t *pBuf,
|
|
|
+ uint8_t ielen,
|
|
|
+ tDot11fIEosen_ie *pDst,
|
|
|
+ bool append_ie)
|
|
|
+{
|
|
|
+ uint32_t status = DOT11F_PARSE_SUCCESS;
|
|
|
+ (void) pBuf; (void)ielen; /* Shutup the compiler */
|
|
|
+ if (pDst->present)
|
|
|
+ status = 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_osen_ie. */
|
|
|
+
|
|
|
+#define SigIeosen_ie (0x008d)
|
|
|
+
|
|
|
+
|
|
|
uint32_t dot11f_unpack_ie_sec_chan_offset_ele(tpAniSirGlobal pCtx,
|
|
|
uint8_t *pBuf,
|
|
|
uint8_t ielen,
|
|
@@ -6554,7 +6574,7 @@ uint32_t dot11f_unpack_ie_sec_chan_offset_ele(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_unpack_ie_sec_chan_offset_ele. */
|
|
|
|
|
|
-#define SigIesec_chan_offset_ele (0x008d)
|
|
|
+#define SigIesec_chan_offset_ele (0x008e)
|
|
|
|
|
|
|
|
|
static const tFFDefn FFS_vendor_he_cap[] = {
|
|
@@ -6685,7 +6705,7 @@ uint32_t dot11f_unpack_ie_vendor_he_cap(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_unpack_ie_vendor_he_cap. */
|
|
|
|
|
|
-#define SigIevendor_he_cap (0x008e)
|
|
|
+#define SigIevendor_he_cap (0x008f)
|
|
|
|
|
|
|
|
|
static const tFFDefn FFS_vendor_he_op[] = {
|
|
@@ -6738,7 +6758,7 @@ uint32_t dot11f_unpack_ie_vendor_he_op(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_unpack_ie_vendor_he_op. */
|
|
|
|
|
|
-#define SigIevendor_he_op (0x008f)
|
|
|
+#define SigIevendor_he_op (0x0090)
|
|
|
|
|
|
|
|
|
static const tFFDefn FFS_vendor_vht_ie[] = {
|
|
@@ -6785,7 +6805,7 @@ uint32_t dot11f_unpack_ie_vendor_vht_ie(tpAniSirGlobal pCtx,
|
|
|
return status;
|
|
|
} /* End dot11f_unpack_ie_vendor_vht_ie. */
|
|
|
|
|
|
-#define SigIevendor_vht_ie (0x0090)
|
|
|
+#define SigIevendor_vht_ie (0x0091)
|
|
|
|
|
|
|
|
|
static const tFFDefn FFS_AddTSRequest[] = {
|
|
@@ -7041,6 +7061,9 @@ static const tIEDefn IES_AssocRequest[] = {
|
|
|
{ offsetof(tDot11fAssocRequest, MBO_IE), offsetof(tDot11fIEMBO_IE,
|
|
|
present), 0, "MBO_IE", 0, 9, 12, 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},
|
|
|
+ 4, DOT11F_EID_OSEN_IE, 0, 0, },
|
|
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
|
|
|
|
|
uint32_t dot11f_unpack_assoc_request(tpAniSirGlobal pCtx,
|
|
@@ -11722,6 +11745,16 @@ static uint32_t unpack_core(tpAniSirGlobal pCtx,
|
|
|
countOffset),
|
|
|
append_ie);
|
|
|
break;
|
|
|
+ case SigIeosen_ie:
|
|
|
+ status |=
|
|
|
+ dot11f_unpack_ie_osen_ie(
|
|
|
+ pCtx, pBufRemaining, len,
|
|
|
+ (tDot11fIEosen_ie *)
|
|
|
+ (pFrm + pIe->offset +
|
|
|
+ sizeof(tDot11fIEosen_ie) *
|
|
|
+ countOffset),
|
|
|
+ append_ie);
|
|
|
+ break;
|
|
|
case SigIesec_chan_offset_ele:
|
|
|
status |=
|
|
|
dot11f_unpack_ie_sec_chan_offset_ele(
|
|
@@ -14610,6 +14643,15 @@ static uint32_t get_packed_size_core(tpAniSirGlobal pCtx,
|
|
|
(pFrm + pIe->offset + offset * i))->
|
|
|
present;
|
|
|
break;
|
|
|
+ case SigIeosen_ie:
|
|
|
+ offset = sizeof(tDot11fIEosen_ie);
|
|
|
+ byteCount = ((tDot11fIEosen_ie *)
|
|
|
+ (pFrm + pIe->offset + offset * i))->
|
|
|
+ num_data;
|
|
|
+ pIePresent = ((tDot11fIEosen_ie *)
|
|
|
+ (pFrm + pIe->offset + offset * i))->
|
|
|
+ present;
|
|
|
+ break;
|
|
|
case SigIesec_chan_offset_ele:
|
|
|
offset = sizeof(tDot11fIEsec_chan_offset_ele);
|
|
|
byteCount = 1;
|
|
@@ -22720,6 +22762,43 @@ uint32_t dot11f_pack_ie_mu_edca_param_set(tpAniSirGlobal pCtx,
|
|
|
return DOT11F_PARSE_SUCCESS;
|
|
|
} /* End dot11f_pack_ie_mu_edca_param_set. */
|
|
|
|
|
|
+uint32_t dot11f_pack_ie_osen_ie(tpAniSirGlobal pCtx,
|
|
|
+ tDot11fIEosen_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 = 221;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ pIeLen = pBuf;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ *pBuf = 0x50;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ *pBuf = 0x6f;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ *pBuf = 0x9a;
|
|
|
+ ++pBuf; ++(*pnConsumed);
|
|
|
+ *pBuf = 0x12;
|
|
|
+ ++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_osen_ie. */
|
|
|
+
|
|
|
uint32_t dot11f_pack_ie_sec_chan_offset_ele(tpAniSirGlobal pCtx,
|
|
|
tDot11fIEsec_chan_offset_ele *pSrc,
|
|
|
uint8_t *pBuf,
|
|
@@ -25143,6 +25222,14 @@ static uint32_t pack_core(tpAniSirGlobal pCtx,
|
|
|
sizeof(tDot11fIEmu_edca_param_set) * i),
|
|
|
pBufRemaining, nBufRemaining, &len);
|
|
|
break;
|
|
|
+ case SigIeosen_ie:
|
|
|
+ status |=
|
|
|
+ dot11f_pack_ie_osen_ie(
|
|
|
+ pCtx, (tDot11fIEosen_ie *)
|
|
|
+ (pSrc + pIe->offset +
|
|
|
+ sizeof(tDot11fIEosen_ie) * i),
|
|
|
+ pBufRemaining, nBufRemaining, &len);
|
|
|
+ break;
|
|
|
case SigIesec_chan_offset_ele:
|
|
|
status |=
|
|
|
dot11f_pack_ie_sec_chan_offset_ele(
|