aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Quantin <pascal@wireshark.org>2023-01-11 10:30:41 +0100
committerPascal Quantin <pascal@wireshark.org>2023-01-11 10:17:49 +0000
commitf2cdd8bbc3dc07a6b36102f7d572e45c1be4a2b7 (patch)
treed71aebbd181934ab88d25a8d3081eb3243de00a3
parentfc013d9bd60783478c672a95904c8ce4c3d68de4 (diff)
M2AP: upgrade dissector to v17.0.1
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-Constants.asn14
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-Containers.asn2
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-IEs.asn52
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn21
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn10
-rw-r--r--epan/dissectors/asn1/m2ap/m2ap.cnf8
-rw-r--r--epan/dissectors/asn1/m2ap/packet-m2ap-template.c4
-rw-r--r--epan/dissectors/packet-m2ap.c342
9 files changed, 429 insertions, 30 deletions
diff --git a/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn b/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
index a8ccf4e640..25f239bc59 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Common definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/m2ap/M2AP-Constants.asn b/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
index a38cb9df89..a13990cccc 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Constant definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -44,11 +44,11 @@ id-mbmsOverloadNotification ProcedureCode ::= 12
--
-- **************************************************************
-maxnoofMBSFNareas INTEGER ::= 256
+maxnoofMBSFNareas INTEGER ::= 256
maxnoofMBSFN-Allocations INTEGER ::= 8
maxnoofPMCHsperMBSFNarea INTEGER ::= 15
maxnoofCells INTEGER ::= 256
-maxnoofMBMSServiceAreasPerCell INTEGER ::= 256
+maxnoofMBMSServiceAreasPerCell INTEGER ::= 256
maxnoofSessionsPerPMCH INTEGER ::= 29
maxnooferrors INTEGER ::= 256
maxNrOfIndividualM2ConnectionsToReset INTEGER ::= 256
@@ -110,5 +110,9 @@ id-Repetition-PeriodExtended ProtocolIE-ID ::= 47
id-MCH-Scheduling-PeriodExtended2 ProtocolIE-ID ::= 48
id-Subcarrier-SpacingMBMS ProtocolIE-ID ::= 49
id-SubframeAllocationExtended ProtocolIE-ID ::= 50
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ProtocolIE-ID ::= 51
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea ProtocolIE-ID ::= 52
+id-SubframeAllocationFurtherExtension ProtocolIE-ID ::= 53
+id-AdditionalConfigParameters ProtocolIE-ID ::= 54
END
diff --git a/epan/dissectors/asn1/m2ap/M2AP-Containers.asn b/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
index 7c7740654a..1be565830e 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Container definitions
diff --git a/epan/dissectors/asn1/m2ap/M2AP-IEs.asn b/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
index 85f25047c3..0996c14f8b 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Information Element Definitions
@@ -21,6 +21,8 @@ IMPORTS
id-Repetition-PeriodExtended,
id-Subcarrier-SpacingMBMS,
id-SubframeAllocationExtended,
+ id-SubframeAllocationFurtherExtension,
+ id-AdditionalConfigParameters,
maxnoofMBSFNareas,
maxnoofPMCHsperMBSFNarea,
maxnoofCells,
@@ -45,6 +47,16 @@ FROM M2AP-Containers;
-- A
+AdditionalConfigParameters ::= SEQUENCE {
+ pmch-Bandwidth PMCH-Bandwidth,
+ iE-Extensions ProtocolExtensionContainer { {AdditionalConfigParameters-ExtIEs} } OPTIONAL
+}
+
+AdditionalConfigParameters-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
AllocatedSubframesEnd ::= INTEGER (0..1535)
AllocationAndRetentionPriority ::= SEQUENCE {
@@ -323,7 +335,8 @@ MBSFN-Subframe-Configuration ::= SEQUENCE {
}
MBSFN-Subframe-Configuration-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
- {ID id-SubframeAllocationExtended CRITICALITY reject EXTENSION SubframeAllocationExtended PRESENCE optional},
+ {ID id-SubframeAllocationExtended CRITICALITY reject EXTENSION SubframeAllocationExtended PRESENCE optional}|
+ {ID id-SubframeAllocationFurtherExtension CRITICALITY reject EXTENSION SubframeAllocationFurtherExtension PRESENCE optional},
...
}
@@ -351,6 +364,26 @@ MCCHrelatedBCCH-ConfigPerMBSFNArea-Item-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
...
}
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ::= SEQUENCE {
+ mbsfnArea MBSFN-Area-ID,
+ repetitionPeriodExpanded ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256, ...},
+ offset INTEGER (0..10),
+ modificationPeriodExpanded ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256, rf512, rf1024, ...},
+ subframeAllocationInfoExpanded BIT STRING (SIZE(10)),
+ modulationAndCodingScheme ENUMERATED {n2, n7, n13, n19},
+ subcarrier-SpacingMBMSExpanded ENUMERATED {khz-7dot5, khz-2dot5, khz-1dot25, khz-0dot37, ..., kHz-15},
+ timeSeparation ENUMERATED {sl2, sl4, ...} OPTIONAL,
+ cellInformationList Cell-Information-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
+ -- Extension for Rel-17 to support PMCH Bandwidth values –-
+ {ID id-AdditionalConfigParameters CRITICALITY reject EXTENSION AdditionalConfigParameters PRESENCE optional},
+ ...
+}
+
MCE-ID ::= OCTET STRING (SIZE(2))
MCE-MBMS-M2AP-ID ::= INTEGER (0.. 16777215)
@@ -375,6 +408,8 @@ Modification-PeriodExtended ::= ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64
PLMN-Identity ::= OCTET STRING (SIZE(3))
+PMCH-Bandwidth ::= ENUMERATED {n40, n35, n30, ...}
+
PMCH-Configuration ::= SEQUENCE {
allocatedSubframesEnd AllocatedSubframesEnd,
dataMCS INTEGER (0..28),
@@ -444,6 +479,19 @@ SubframeAllocationExtended ::= CHOICE {
SubframeAllocationExtended-ExtIEs M2AP-PROTOCOL-IES ::= { ...
}
+SubframeAllocationFurtherExtension ::= CHOICE {
+ oneFrameFurtherExtension BIT STRING (SIZE(2)),
+ fourFrameFurtherExtension BIT STRING (SIZE(8)),
+ choice-extension ProtocolIE-Single-Container { { SubframeAllocationFurtherExtension-ExtIEs} },
+
+ ...
+}
+
+
+SubframeAllocationFurtherExtension-ExtIEs M2AP-PROTOCOL-IES ::= { ...
+}
+
+
-- T
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
diff --git a/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn b/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
index 7884b01034..05b5598797 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- PDU definitions for M2AP.
@@ -37,6 +37,7 @@ IMPORTS
MBSFN-Subframe-Configuration,
MCCH-Update-Time,
MCCHrelatedBCCH-ConfigPerMBSFNArea-Item,
+ MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item,
MCE-MBMS-M2AP-ID,
MCEname,
PMCH-Configuration,
@@ -87,6 +88,8 @@ FROM M2AP-Containers
id-MCEname,
id-MCCHrelatedBCCH-ConfigPerMBSFNArea,
id-MCCHrelatedBCCH-ConfigPerMBSFNArea-Item,
+ id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea,
+ id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item,
id-TimeToWait,
id-ENB-MBMS-Configuration-data-List-ConfigUpdate,
id-ENB-MBMS-Configuration-data-ConfigUpdate-Item,
@@ -398,7 +401,8 @@ M2SetupResponse-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-GlobalMCE-ID CRITICALITY reject TYPE GlobalMCE-ID PRESENCE mandatory }|
{ ID id-MCEname CRITICALITY ignore TYPE MCEname PRESENCE optional }|
{ ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
@@ -409,6 +413,13 @@ MCCHrelatedBCCH-ConfigPerMBSFNArea-ItemIEs M2AP-PROTOCOL-IES ::= {
...
}
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea ::= SEQUENCE (SIZE(1.. maxnoofMBSFNareas)) OF ProtocolIE-Single-Container { { MCCHrelatedBCCH-ExtConfigPerMBSFNArea-ItemIEs } }
+
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-ItemIEs M2AP-PROTOCOL-IES ::= {
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item PRESENCE mandatory },
+ ...
+}
+
-- **************************************************************
--
-- M2 SETUP FAILURE
@@ -465,7 +476,8 @@ ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
ENBConfigurationUpdateAcknowledge-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
@@ -504,7 +516,8 @@ MCEConfigurationUpdate ::= SEQUENCE {
MCEConfigurationUpdate-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-GlobalMCE-ID CRITICALITY reject TYPE GlobalMCE-ID PRESENCE optional }|
{ ID id-MCEname CRITICALITY ignore TYPE MCEname PRESENCE optional }|
- { ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional },
+ { ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
diff --git a/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
index f6c623caec..4cc9a50801 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Elementary Procedure definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-PDU-Descriptions (0) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -29,7 +29,7 @@ FROM M2AP-CommonDataTypes
SessionStartResponse,
SessionStartFailure,
SessionStopRequest,
- SessionStopResponse,
+ SessionStopResponse,
SessionUpdateRequest,
SessionUpdateResponse,
SessionUpdateFailure,
@@ -56,7 +56,7 @@ FROM M2AP-CommonDataTypes
FROM M2AP-PDU-Contents
id-sessionStart,
- id-sessionStop,
+ id-sessionStop,
id-sessionUpdate,
id-mbmsServiceCounting,
id-mbmsServiceCountingResultsReport,
diff --git a/epan/dissectors/asn1/m2ap/m2ap.cnf b/epan/dissectors/asn1/m2ap/m2ap.cnf
index 76cc88dd16..f95a13576d 100644
--- a/epan/dissectors/asn1/m2ap/m2ap.cnf
+++ b/epan/dissectors/asn1/m2ap/m2ap.cnf
@@ -229,6 +229,10 @@ id-Repetition-PeriodExtended ProtocolIE-ID
id-MCH-Scheduling-PeriodExtended2 ProtocolIE-ID
id-Subcarrier-SpacingMBMS ProtocolIE-ID
id-SubframeAllocationExtended ProtocolIE-ID
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ProtocolIE-ID
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea ProtocolIE-ID
+id-SubframeAllocationFurtherExtension ProtocolIE-ID
+id-AdditionalConfigParameters ProtocolIE-ID
#.REGISTER
@@ -274,6 +278,8 @@ Active-MBMS-Session-List N m2ap.ies id-Active-MBMS-
MBMS-Suspension-Notification-List N m2ap.ies id-MBMS-Suspension-Notification-List
MBMS-Suspension-Notification-Item N m2ap.ies id-MBMS-Suspension-Notification-Item
SC-PTM-Information N m2ap.ies id-SC-PTM-Information
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item N m2ap.ies id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea N m2ap.ies id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea
#M2AP-PROTOCOL-EXTENSION
Modulation-Coding-Scheme2 N m2ap.extension id-Modulation-Coding-Scheme2
@@ -283,6 +289,8 @@ Modification-PeriodExtended N m2ap.extension id-Modifi
MCH-Scheduling-PeriodExtended2 N m2ap.extension id-MCH-Scheduling-PeriodExtended2
SubframeAllocationExtended N m2ap.extension id-SubframeAllocationExtended
Subcarrier-SpacingMBMS N m2ap.extension id-Subcarrier-SpacingMBMS
+SubframeAllocationFurtherExtension N m2ap.extension id-SubframeAllocationFurtherExtension
+AdditionalConfigParameters N m2ap.extension id-AdditionalConfigParameters
#M2AP-ELEMENTARY-PROCEDURE
SessionStartRequest N m2ap.proc.imsg id-sessionStart
diff --git a/epan/dissectors/asn1/m2ap/packet-m2ap-template.c b/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
index bad77e2534..b7d9c2297e 100644
--- a/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
+++ b/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
@@ -1,6 +1,6 @@
/* packet-m2ap.c
* Routines for M2 Application Protocol packet dissection
- * Copyright 2016, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2016-2023, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Reference: 3GPP TS 36.443 v15.0.0
+ * Reference: 3GPP TS 36.443 v17.0.1
*/
#include "config.h"
diff --git a/epan/dissectors/packet-m2ap.c b/epan/dissectors/packet-m2ap.c
index b4d61e292f..2b0a7ddd30 100644
--- a/epan/dissectors/packet-m2ap.c
+++ b/epan/dissectors/packet-m2ap.c
@@ -5,7 +5,7 @@
/* packet-m2ap.c
* Routines for M2 Application Protocol packet dissection
- * Copyright 2016, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2016-2023, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -13,7 +13,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Reference: 3GPP TS 36.443 v15.0.0
+ * Reference: 3GPP TS 36.443 v17.0.1
*/
#include "config.h"
@@ -115,7 +115,11 @@ typedef enum _ProtocolIE_ID_enum {
id_Repetition_PeriodExtended = 47,
id_MCH_Scheduling_PeriodExtended2 = 48,
id_Subcarrier_SpacingMBMS = 49,
- id_SubframeAllocationExtended = 50
+ id_SubframeAllocationExtended = 50,
+ id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item = 51,
+ id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea = 52,
+ id_SubframeAllocationFurtherExtension = 53,
+ id_AdditionalConfigParameters = 54
} ProtocolIE_ID_enum;
/* Initialize the protocol and registered fields */
@@ -123,6 +127,7 @@ static int proto_m2ap = -1;
static int hf_m2ap_IPAddress_v4 = -1;
static int hf_m2ap_IPAddress_v6 = -1;
+static int hf_m2ap_AdditionalConfigParameters_PDU = -1; /* AdditionalConfigParameters */
static int hf_m2ap_Cause_PDU = -1; /* Cause */
static int hf_m2ap_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics */
static int hf_m2ap_ENB_MBMS_Configuration_data_Item_PDU = -1; /* ENB_MBMS_Configuration_data_Item */
@@ -138,6 +143,7 @@ static int hf_m2ap_MBSFN_Area_ID_PDU = -1; /* MBSFN_Area_ID */
static int hf_m2ap_MBSFN_Subframe_Configuration_PDU = -1; /* MBSFN_Subframe_Configuration */
static int hf_m2ap_MCCH_Update_Time_PDU = -1; /* MCCH_Update_Time */
static int hf_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_Item_PDU = -1; /* MCCHrelatedBCCH_ConfigPerMBSFNArea_Item */
+static int hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_PDU = -1; /* MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item */
static int hf_m2ap_MCE_MBMS_M2AP_ID_PDU = -1; /* MCE_MBMS_M2AP_ID */
static int hf_m2ap_MCEname_PDU = -1; /* MCEname */
static int hf_m2ap_MCH_Scheduling_PeriodExtended_PDU = -1; /* MCH_Scheduling_PeriodExtended */
@@ -149,6 +155,7 @@ static int hf_m2ap_Repetition_PeriodExtended_PDU = -1; /* Repetition_PeriodExte
static int hf_m2ap_SC_PTM_Information_PDU = -1; /* SC_PTM_Information */
static int hf_m2ap_Subcarrier_SpacingMBMS_PDU = -1; /* Subcarrier_SpacingMBMS */
static int hf_m2ap_SubframeAllocationExtended_PDU = -1; /* SubframeAllocationExtended */
+static int hf_m2ap_SubframeAllocationFurtherExtension_PDU = -1; /* SubframeAllocationFurtherExtension */
static int hf_m2ap_TimeToWait_PDU = -1; /* TimeToWait */
static int hf_m2ap_TMGI_PDU = -1; /* TMGI */
static int hf_m2ap_TNL_Information_PDU = -1; /* TNL_Information */
@@ -172,6 +179,7 @@ static int hf_m2ap_M2SetupRequest_PDU = -1; /* M2SetupRequest */
static int hf_m2ap_ENB_MBMS_Configuration_data_List_PDU = -1; /* ENB_MBMS_Configuration_data_List */
static int hf_m2ap_M2SetupResponse_PDU = -1; /* M2SetupResponse */
static int hf_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_PDU = -1; /* MCCHrelatedBCCH_ConfigPerMBSFNArea */
+static int hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_PDU = -1; /* MCCHrelatedBCCH_ExtConfigPerMBSFNArea */
static int hf_m2ap_M2SetupFailure_PDU = -1; /* M2SetupFailure */
static int hf_m2ap_ENBConfigurationUpdate_PDU = -1; /* ENBConfigurationUpdate */
static int hf_m2ap_ENB_MBMS_Configuration_data_List_ConfigUpdate_PDU = -1; /* ENB_MBMS_Configuration_data_List_ConfigUpdate */
@@ -211,10 +219,11 @@ static int hf_m2ap_extensionValue = -1; /* T_extensionValue */
static int hf_m2ap_PrivateIE_Container_item = -1; /* PrivateIE_Field */
static int hf_m2ap_private_id = -1; /* PrivateIE_ID */
static int hf_m2ap_private_value = -1; /* T_private_value */
+static int hf_m2ap_pmch_Bandwidth = -1; /* PMCH_Bandwidth */
+static int hf_m2ap_iE_Extensions = -1; /* ProtocolExtensionContainer */
static int hf_m2ap_priorityLevel = -1; /* PriorityLevel */
static int hf_m2ap_pre_emptionCapability = -1; /* Pre_emptionCapability */
static int hf_m2ap_pre_emptionVulnerability = -1; /* Pre_emptionVulnerability */
-static int hf_m2ap_iE_Extensions = -1; /* ProtocolExtensionContainer */
static int hf_m2ap_radioNetwork = -1; /* CauseRadioNetwork */
static int hf_m2ap_transport = -1; /* CauseTransport */
static int hf_m2ap_nAS = -1; /* CauseNAS */
@@ -267,6 +276,12 @@ static int hf_m2ap_modificationPeriod = -1; /* T_modificationPeriod */
static int hf_m2ap_subframeAllocationInfo = -1; /* BIT_STRING_SIZE_6 */
static int hf_m2ap_modulationAndCodingScheme = -1; /* T_modulationAndCodingScheme */
static int hf_m2ap_cellInformationList = -1; /* Cell_Information_List */
+static int hf_m2ap_repetitionPeriodExpanded = -1; /* T_repetitionPeriodExpanded */
+static int hf_m2ap_modificationPeriodExpanded = -1; /* T_modificationPeriodExpanded */
+static int hf_m2ap_subframeAllocationInfoExpanded = -1; /* BIT_STRING_SIZE_10 */
+static int hf_m2ap_modulationAndCodingScheme_01 = -1; /* T_modulationAndCodingScheme_01 */
+static int hf_m2ap_subcarrier_SpacingMBMSExpanded = -1; /* T_subcarrier_SpacingMBMSExpanded */
+static int hf_m2ap_timeSeparation = -1; /* T_timeSeparation */
static int hf_m2ap_allocatedSubframesEnd = -1; /* AllocatedSubframesEnd */
static int hf_m2ap_dataMCS = -1; /* INTEGER_0_28 */
static int hf_m2ap_mchSchedulingPeriod = -1; /* MCH_Scheduling_Period */
@@ -275,6 +290,8 @@ static int hf_m2ap_mbms_E_RAB_QoS_Parameters = -1; /* MBMS_E_RAB_QoS_Parameters
static int hf_m2ap_oneFrameExtension = -1; /* BIT_STRING_SIZE_2 */
static int hf_m2ap_fourFrameExtension = -1; /* BIT_STRING_SIZE_8 */
static int hf_m2ap_choice_extension = -1; /* ProtocolIE_Single_Container */
+static int hf_m2ap_oneFrameFurtherExtension = -1; /* BIT_STRING_SIZE_2 */
+static int hf_m2ap_fourFrameFurtherExtension = -1; /* BIT_STRING_SIZE_8 */
static int hf_m2ap_pLMNidentity = -1; /* PLMN_Identity */
static int hf_m2ap_serviceID = -1; /* OCTET_STRING_SIZE_3 */
static int hf_m2ap_iPMCAddress = -1; /* IPAddress */
@@ -291,6 +308,7 @@ static int hf_m2ap_sfn = -1; /* SFN */
static int hf_m2ap_mbms_Sessions_To_Be_Suspended_List = -1; /* MBMSsessionsToBeSuspendedListPerPMCH_Item */
static int hf_m2ap_ENB_MBMS_Configuration_data_List_item = -1; /* ProtocolIE_Single_Container */
static int hf_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_item = -1; /* ProtocolIE_Single_Container */
+static int hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_item = -1; /* ProtocolIE_Single_Container */
static int hf_m2ap_ENB_MBMS_Configuration_data_List_ConfigUpdate_item = -1; /* ProtocolIE_Single_Container */
static int hf_m2ap_m2_Interface = -1; /* ResetAll */
static int hf_m2ap_partOfM2_Interface = -1; /* MBMS_Service_associatedLogicalM2_ConnectionListRes */
@@ -320,6 +338,7 @@ static gint ett_m2ap_ProtocolExtensionContainer = -1;
static gint ett_m2ap_ProtocolExtensionField = -1;
static gint ett_m2ap_PrivateIE_Container = -1;
static gint ett_m2ap_PrivateIE_Field = -1;
+static gint ett_m2ap_AdditionalConfigParameters = -1;
static gint ett_m2ap_AllocationAndRetentionPriority = -1;
static gint ett_m2ap_Cause = -1;
static gint ett_m2ap_Cell_Information = -1;
@@ -345,9 +364,11 @@ static gint ett_m2ap_MBMSsessionsToBeSuspendedListPerPMCH_Item_item = -1;
static gint ett_m2ap_MBSFN_Subframe_Configuration = -1;
static gint ett_m2ap_T_subframeAllocation = -1;
static gint ett_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_Item = -1;
+static gint ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item = -1;
static gint ett_m2ap_PMCH_Configuration = -1;
static gint ett_m2ap_SC_PTM_Information = -1;
static gint ett_m2ap_SubframeAllocationExtended = -1;
+static gint ett_m2ap_SubframeAllocationFurtherExtension = -1;
static gint ett_m2ap_TMGI = -1;
static gint ett_m2ap_TNL_Information = -1;
static gint ett_m2ap_SessionStartRequest = -1;
@@ -370,6 +391,7 @@ static gint ett_m2ap_M2SetupRequest = -1;
static gint ett_m2ap_ENB_MBMS_Configuration_data_List = -1;
static gint ett_m2ap_M2SetupResponse = -1;
static gint ett_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea = -1;
+static gint ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea = -1;
static gint ett_m2ap_M2SetupFailure = -1;
static gint ett_m2ap_ENBConfigurationUpdate = -1;
static gint ett_m2ap_ENB_MBMS_Configuration_data_List_ConfigUpdate = -1;
@@ -580,6 +602,10 @@ static const value_string m2ap_ProtocolIE_ID_vals[] = {
{ id_MCH_Scheduling_PeriodExtended2, "id-MCH-Scheduling-PeriodExtended2" },
{ id_Subcarrier_SpacingMBMS, "id-Subcarrier-SpacingMBMS" },
{ id_SubframeAllocationExtended, "id-SubframeAllocationExtended" },
+ { id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item, "id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item" },
+ { id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea, "id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea" },
+ { id_SubframeAllocationFurtherExtension, "id-SubframeAllocationFurtherExtension" },
+ { id_AdditionalConfigParameters, "id-AdditionalConfigParameters" },
{ 0, NULL }
};
@@ -741,6 +767,38 @@ dissect_m2ap_PrivateIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
}
+static const value_string m2ap_PMCH_Bandwidth_vals[] = {
+ { 0, "n40" },
+ { 1, "n35" },
+ { 2, "n30" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_PMCH_Bandwidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 3, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t AdditionalConfigParameters_sequence[] = {
+ { &hf_m2ap_pmch_Bandwidth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_m2ap_PMCH_Bandwidth },
+ { &hf_m2ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_m2ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_m2ap_AdditionalConfigParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_m2ap_AdditionalConfigParameters, AdditionalConfigParameters_sequence);
+
+ return offset;
+}
+
+
static int
dissect_m2ap_AllocatedSubframesEnd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -1732,6 +1790,140 @@ dissect_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_Item(tvbuff_t *tvb _U_, int offs
}
+static const value_string m2ap_T_repetitionPeriodExpanded_vals[] = {
+ { 0, "rf1" },
+ { 1, "rf2" },
+ { 2, "rf4" },
+ { 3, "rf8" },
+ { 4, "rf16" },
+ { 5, "rf32" },
+ { 6, "rf64" },
+ { 7, "rf128" },
+ { 8, "rf256" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_T_repetitionPeriodExpanded(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 9, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+static const value_string m2ap_T_modificationPeriodExpanded_vals[] = {
+ { 0, "rf1" },
+ { 1, "rf2" },
+ { 2, "rf4" },
+ { 3, "rf8" },
+ { 4, "rf16" },
+ { 5, "rf32" },
+ { 6, "rf64" },
+ { 7, "rf128" },
+ { 8, "rf256" },
+ { 9, "rf512" },
+ { 10, "rf1024" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_T_modificationPeriodExpanded(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 11, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_m2ap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
+ 10, 10, FALSE, NULL, 0, NULL, NULL);
+
+ return offset;
+}
+
+
+static const value_string m2ap_T_modulationAndCodingScheme_01_vals[] = {
+ { 0, "n2" },
+ { 1, "n7" },
+ { 2, "n13" },
+ { 3, "n19" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_T_modulationAndCodingScheme_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 4, NULL, FALSE, 0, NULL);
+
+ return offset;
+}
+
+
+static const value_string m2ap_T_subcarrier_SpacingMBMSExpanded_vals[] = {
+ { 0, "khz-7dot5" },
+ { 1, "khz-2dot5" },
+ { 2, "khz-1dot25" },
+ { 3, "khz-0dot37" },
+ { 4, "kHz-15" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_T_subcarrier_SpacingMBMSExpanded(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 4, NULL, TRUE, 1, NULL);
+
+ return offset;
+}
+
+
+static const value_string m2ap_T_timeSeparation_vals[] = {
+ { 0, "sl2" },
+ { 1, "sl4" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_m2ap_T_timeSeparation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 2, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_sequence[] = {
+ { &hf_m2ap_mbsfnArea , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_MBSFN_Area_ID },
+ { &hf_m2ap_repetitionPeriodExpanded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_T_repetitionPeriodExpanded },
+ { &hf_m2ap_offset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_INTEGER_0_10 },
+ { &hf_m2ap_modificationPeriodExpanded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_T_modificationPeriodExpanded },
+ { &hf_m2ap_subframeAllocationInfoExpanded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_BIT_STRING_SIZE_10 },
+ { &hf_m2ap_modulationAndCodingScheme_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_T_modulationAndCodingScheme_01 },
+ { &hf_m2ap_subcarrier_SpacingMBMSExpanded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_T_subcarrier_SpacingMBMSExpanded },
+ { &hf_m2ap_timeSeparation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_m2ap_T_timeSeparation },
+ { &hf_m2ap_cellInformationList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_m2ap_Cell_Information_List },
+ { &hf_m2ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_m2ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item, MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_sequence);
+
+ return offset;
+}
+
+
static int
dissect_m2ap_MCEname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -1981,6 +2173,30 @@ dissect_m2ap_SubframeAllocationExtended(tvbuff_t *tvb _U_, int offset _U_, asn1_
}
+static const value_string m2ap_SubframeAllocationFurtherExtension_vals[] = {
+ { 0, "oneFrameFurtherExtension" },
+ { 1, "fourFrameFurtherExtension" },
+ { 2, "choice-extension" },
+ { 0, NULL }
+};
+
+static const per_choice_t SubframeAllocationFurtherExtension_choice[] = {
+ { 0, &hf_m2ap_oneFrameFurtherExtension, ASN1_EXTENSION_ROOT , dissect_m2ap_BIT_STRING_SIZE_2 },
+ { 1, &hf_m2ap_fourFrameFurtherExtension, ASN1_EXTENSION_ROOT , dissect_m2ap_BIT_STRING_SIZE_8 },
+ { 2, &hf_m2ap_choice_extension, ASN1_EXTENSION_ROOT , dissect_m2ap_ProtocolIE_Single_Container },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_m2ap_SubframeAllocationFurtherExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_m2ap_SubframeAllocationFurtherExtension, SubframeAllocationFurtherExtension_choice,
+ NULL);
+
+ return offset;
+}
+
+
static const value_string m2ap_TimeToWait_vals[] = {
{ 0, "v1s" },
{ 1, "v2s" },
@@ -2314,6 +2530,20 @@ dissect_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea(tvbuff_t *tvb _U_, int offset _U
}
+static const per_sequence_t MCCHrelatedBCCH_ExtConfigPerMBSFNArea_sequence_of[1] = {
+ { &hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_m2ap_ProtocolIE_Single_Container },
+};
+
+static int
+dissect_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea, MCCHrelatedBCCH_ExtConfigPerMBSFNArea_sequence_of,
+ 1, maxnoofMBSFNareas, FALSE);
+
+ return offset;
+}
+
+
static const per_sequence_t M2SetupFailure_sequence[] = {
{ &hf_m2ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_m2ap_ProtocolIE_Container },
{ NULL, 0, 0, NULL }
@@ -2853,6 +3083,14 @@ dissect_m2ap_M2AP_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
/*--- PDUs ---*/
+static int dissect_AdditionalConfigParameters_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_m2ap_AdditionalConfigParameters(tvb, offset, &asn1_ctx, tree, hf_m2ap_AdditionalConfigParameters_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_Cause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -2973,6 +3211,14 @@ static int dissect_MCCHrelatedBCCH_ConfigPerMBSFNArea_Item_PDU(tvbuff_t *tvb _U_
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item(tvb, offset, &asn1_ctx, tree, hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_MCE_MBMS_M2AP_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -3061,6 +3307,14 @@ static int dissect_SubframeAllocationExtended_PDU(tvbuff_t *tvb _U_, packet_info
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_SubframeAllocationFurtherExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_m2ap_SubframeAllocationFurtherExtension(tvb, offset, &asn1_ctx, tree, hf_m2ap_SubframeAllocationFurtherExtension_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_TimeToWait_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -3245,6 +3499,14 @@ static int dissect_MCCHrelatedBCCH_ConfigPerMBSFNArea_PDU(tvbuff_t *tvb _U_, pac
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea(tvb, offset, &asn1_ctx, tree, hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_M2SetupFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -3528,6 +3790,10 @@ proto_register_m2ap(void) {
FT_IPv6, BASE_NONE, NULL, 0,
NULL, HFILL }
},
+ { &hf_m2ap_AdditionalConfigParameters_PDU,
+ { "AdditionalConfigParameters", "m2ap.AdditionalConfigParameters_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_m2ap_Cause_PDU,
{ "Cause", "m2ap.Cause",
FT_UINT32, BASE_DEC, VALS(m2ap_Cause_vals), 0,
@@ -3588,6 +3854,10 @@ proto_register_m2ap(void) {
{ "MCCHrelatedBCCH-ConfigPerMBSFNArea-Item", "m2ap.MCCHrelatedBCCH_ConfigPerMBSFNArea_Item_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_PDU,
+ { "MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item", "m2ap.MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_m2ap_MCE_MBMS_M2AP_ID_PDU,
{ "MCE-MBMS-M2AP-ID", "m2ap.MCE_MBMS_M2AP_ID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -3632,6 +3902,10 @@ proto_register_m2ap(void) {
{ "SubframeAllocationExtended", "m2ap.SubframeAllocationExtended",
FT_UINT32, BASE_DEC, VALS(m2ap_SubframeAllocationExtended_vals), 0,
NULL, HFILL }},
+ { &hf_m2ap_SubframeAllocationFurtherExtension_PDU,
+ { "SubframeAllocationFurtherExtension", "m2ap.SubframeAllocationFurtherExtension",
+ FT_UINT32, BASE_DEC, VALS(m2ap_SubframeAllocationFurtherExtension_vals), 0,
+ NULL, HFILL }},
{ &hf_m2ap_TimeToWait_PDU,
{ "TimeToWait", "m2ap.TimeToWait",
FT_UINT32, BASE_DEC, VALS(m2ap_TimeToWait_vals), 0,
@@ -3724,6 +3998,10 @@ proto_register_m2ap(void) {
{ "MCCHrelatedBCCH-ConfigPerMBSFNArea", "m2ap.MCCHrelatedBCCH_ConfigPerMBSFNArea",
FT_UINT32, BASE_DEC, NULL, 0,
NULL, HFILL }},
+ { &hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_PDU,
+ { "MCCHrelatedBCCH-ExtConfigPerMBSFNArea", "m2ap.MCCHrelatedBCCH_ExtConfigPerMBSFNArea",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_m2ap_M2SetupFailure_PDU,
{ "M2SetupFailure", "m2ap.M2SetupFailure_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -3880,6 +4158,14 @@ proto_register_m2ap(void) {
{ "value", "m2ap.value_element",
FT_NONE, BASE_NONE, NULL, 0,
"T_private_value", HFILL }},
+ { &hf_m2ap_pmch_Bandwidth,
+ { "pmch-Bandwidth", "m2ap.pmch_Bandwidth",
+ FT_UINT32, BASE_DEC, VALS(m2ap_PMCH_Bandwidth_vals), 0,
+ NULL, HFILL }},
+ { &hf_m2ap_iE_Extensions,
+ { "iE-Extensions", "m2ap.iE_Extensions",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "ProtocolExtensionContainer", HFILL }},
{ &hf_m2ap_priorityLevel,
{ "priorityLevel", "m2ap.priorityLevel",
FT_UINT32, BASE_DEC, VALS(m2ap_PriorityLevel_vals), 0,
@@ -3892,10 +4178,6 @@ proto_register_m2ap(void) {
{ "pre-emptionVulnerability", "m2ap.pre_emptionVulnerability",
FT_UINT32, BASE_DEC, VALS(m2ap_Pre_emptionVulnerability_vals), 0,
NULL, HFILL }},
- { &hf_m2ap_iE_Extensions,
- { "iE-Extensions", "m2ap.iE_Extensions",
- FT_UINT32, BASE_DEC, NULL, 0,
- "ProtocolExtensionContainer", HFILL }},
{ &hf_m2ap_radioNetwork,
{ "radioNetwork", "m2ap.radioNetwork",
FT_UINT32, BASE_DEC, VALS(m2ap_CauseRadioNetwork_vals), 0,
@@ -4104,6 +4386,30 @@ proto_register_m2ap(void) {
{ "cellInformationList", "m2ap.cellInformationList",
FT_UINT32, BASE_DEC, NULL, 0,
"Cell_Information_List", HFILL }},
+ { &hf_m2ap_repetitionPeriodExpanded,
+ { "repetitionPeriodExpanded", "m2ap.repetitionPeriodExpanded",
+ FT_UINT32, BASE_DEC, VALS(m2ap_T_repetitionPeriodExpanded_vals), 0,
+ NULL, HFILL }},
+ { &hf_m2ap_modificationPeriodExpanded,
+ { "modificationPeriodExpanded", "m2ap.modificationPeriodExpanded",
+ FT_UINT32, BASE_DEC, VALS(m2ap_T_modificationPeriodExpanded_vals), 0,
+ NULL, HFILL }},
+ { &hf_m2ap_subframeAllocationInfoExpanded,
+ { "subframeAllocationInfoExpanded", "m2ap.subframeAllocationInfoExpanded",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "BIT_STRING_SIZE_10", HFILL }},
+ { &hf_m2ap_modulationAndCodingScheme_01,
+ { "modulationAndCodingScheme", "m2ap.modulationAndCodingScheme",
+ FT_UINT32, BASE_DEC, VALS(m2ap_T_modulationAndCodingScheme_01_vals), 0,
+ "T_modulationAndCodingScheme_01", HFILL }},
+ { &hf_m2ap_subcarrier_SpacingMBMSExpanded,
+ { "subcarrier-SpacingMBMSExpanded", "m2ap.subcarrier_SpacingMBMSExpanded",
+ FT_UINT32, BASE_DEC, VALS(m2ap_T_subcarrier_SpacingMBMSExpanded_vals), 0,
+ NULL, HFILL }},
+ { &hf_m2ap_timeSeparation,
+ { "timeSeparation", "m2ap.timeSeparation",
+ FT_UINT32, BASE_DEC, VALS(m2ap_T_timeSeparation_vals), 0,
+ NULL, HFILL }},
{ &hf_m2ap_allocatedSubframesEnd,
{ "allocatedSubframesEnd", "m2ap.allocatedSubframesEnd",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -4136,6 +4442,14 @@ proto_register_m2ap(void) {
{ "choice-extension", "m2ap.choice_extension_element",
FT_NONE, BASE_NONE, NULL, 0,
"ProtocolIE_Single_Container", HFILL }},
+ { &hf_m2ap_oneFrameFurtherExtension,
+ { "oneFrameFurtherExtension", "m2ap.oneFrameFurtherExtension",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "BIT_STRING_SIZE_2", HFILL }},
+ { &hf_m2ap_fourFrameFurtherExtension,
+ { "fourFrameFurtherExtension", "m2ap.fourFrameFurtherExtension",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "BIT_STRING_SIZE_8", HFILL }},
{ &hf_m2ap_pLMNidentity,
{ "pLMNidentity", "m2ap.pLMNidentity",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -4200,6 +4514,10 @@ proto_register_m2ap(void) {
{ "ProtocolIE-Single-Container", "m2ap.ProtocolIE_Single_Container_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_item,
+ { "ProtocolIE-Single-Container", "m2ap.ProtocolIE_Single_Container_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_m2ap_ENB_MBMS_Configuration_data_List_ConfigUpdate_item,
{ "ProtocolIE-Single-Container", "m2ap.ProtocolIE_Single_Container_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -4282,6 +4600,7 @@ proto_register_m2ap(void) {
&ett_m2ap_ProtocolExtensionField,
&ett_m2ap_PrivateIE_Container,
&ett_m2ap_PrivateIE_Field,
+ &ett_m2ap_AdditionalConfigParameters,
&ett_m2ap_AllocationAndRetentionPriority,
&ett_m2ap_Cause,
&ett_m2ap_Cell_Information,
@@ -4307,9 +4626,11 @@ proto_register_m2ap(void) {
&ett_m2ap_MBSFN_Subframe_Configuration,
&ett_m2ap_T_subframeAllocation,
&ett_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea_Item,
+ &ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item,
&ett_m2ap_PMCH_Configuration,
&ett_m2ap_SC_PTM_Information,
&ett_m2ap_SubframeAllocationExtended,
+ &ett_m2ap_SubframeAllocationFurtherExtension,
&ett_m2ap_TMGI,
&ett_m2ap_TNL_Information,
&ett_m2ap_SessionStartRequest,
@@ -4332,6 +4653,7 @@ proto_register_m2ap(void) {
&ett_m2ap_ENB_MBMS_Configuration_data_List,
&ett_m2ap_M2SetupResponse,
&ett_m2ap_MCCHrelatedBCCH_ConfigPerMBSFNArea,
+ &ett_m2ap_MCCHrelatedBCCH_ExtConfigPerMBSFNArea,
&ett_m2ap_M2SetupFailure,
&ett_m2ap_ENBConfigurationUpdate,
&ett_m2ap_ENB_MBMS_Configuration_data_List_ConfigUpdate,
@@ -4434,6 +4756,8 @@ proto_reg_handoff_m2ap(void)
dissector_add_uint("m2ap.ies", id_MBMS_Suspension_Notification_List, create_dissector_handle(dissect_MBMS_Suspension_Notification_List_PDU, proto_m2ap));
dissector_add_uint("m2ap.ies", id_MBMS_Suspension_Notification_Item, create_dissector_handle(dissect_MBMS_Suspension_Notification_Item_PDU, proto_m2ap));
dissector_add_uint("m2ap.ies", id_SC_PTM_Information, create_dissector_handle(dissect_SC_PTM_Information_PDU, proto_m2ap));
+ dissector_add_uint("m2ap.ies", id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item, create_dissector_handle(dissect_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_Item_PDU, proto_m2ap));
+ dissector_add_uint("m2ap.ies", id_MCCHrelatedBCCH_ExtConfigPerMBSFNArea, create_dissector_handle(dissect_MCCHrelatedBCCH_ExtConfigPerMBSFNArea_PDU, proto_m2ap));
dissector_add_uint("m2ap.extension", id_Modulation_Coding_Scheme2, create_dissector_handle(dissect_Modulation_Coding_Scheme2_PDU, proto_m2ap));
dissector_add_uint("m2ap.extension", id_MCH_Scheduling_PeriodExtended, create_dissector_handle(dissect_MCH_Scheduling_PeriodExtended_PDU, proto_m2ap));
dissector_add_uint("m2ap.extension", id_Repetition_PeriodExtended, create_dissector_handle(dissect_Repetition_PeriodExtended_PDU, proto_m2ap));
@@ -4441,6 +4765,8 @@ proto_reg_handoff_m2ap(void)
dissector_add_uint("m2ap.extension", id_MCH_Scheduling_PeriodExtended2, create_dissector_handle(dissect_MCH_Scheduling_PeriodExtended2_PDU, proto_m2ap));
dissector_add_uint("m2ap.extension", id_SubframeAllocationExtended, create_dissector_handle(dissect_SubframeAllocationExtended_PDU, proto_m2ap));
dissector_add_uint("m2ap.extension", id_Subcarrier_SpacingMBMS, create_dissector_handle(dissect_Subcarrier_SpacingMBMS_PDU, proto_m2ap));
+ dissector_add_uint("m2ap.extension", id_SubframeAllocationFurtherExtension, create_dissector_handle(dissect_SubframeAllocationFurtherExtension_PDU, proto_m2ap));
+ dissector_add_uint("m2ap.extension", id_AdditionalConfigParameters, create_dissector_handle(dissect_AdditionalConfigParameters_PDU, proto_m2ap));
dissector_add_uint("m2ap.proc.imsg", id_sessionStart, create_dissector_handle(dissect_SessionStartRequest_PDU, proto_m2ap));
dissector_add_uint("m2ap.proc.sout", id_sessionStart, create_dissector_handle(dissect_SessionStartResponse_PDU, proto_m2ap));
dissector_add_uint("m2ap.proc.uout", id_sessionStart, create_dissector_handle(dissect_SessionStartFailure_PDU, proto_m2ap));